Rumah >pembangunan bahagian belakang >masalah PHP >php iterator apa maksudnya

php iterator apa maksudnya

藏色散人
藏色散人asal
2021-10-15 10:37:051932semak imbas

php iterator ialah corak reka bentuk PHP, yang merujuk kepada antara muka yang boleh mengulangi lelaran luarannya sendiri atau kelas secara dalaman;

php iterator apa maksudnya

Persekitaran pengendalian artikel ini: sistem Windows 7, versi PHP 7.1, komputer DELL G3

Apakah maksud lelaran php ?

Mod lelaran PHP

Pelajar: Kelas mewarisi antara muka Iterator PHP dan menjalankan operasi kelompok.

1. Corak iterator merentasi elemen dalaman objek agregat tanpa mengetahui pelaksanaan dalaman.

2. Berbanding dengan corak pengaturcaraan tradisional, corak lelaran boleh menyembunyikan operasi yang diperlukan untuk melintasi elemen.

InterfaceIterator

current() Mengembalikan elemen semasa

key() Mengembalikan kunci elemen semasa

next() Bergerak ke hadapan ke seterusnya elemen

rewind() mengembalikan elemen pertama iterator

class AllUser implements \Iterator
{
    protected $index = 0;
    protected $data = [];
    public function __construct()
    {
        $link = mysqli_connect('192.168.0.91', 'root', '123', 'xxx');
        $rec = mysqli_query($link, 'select id from doc_admin');
        $this->data = mysqli_fetch_all($rec, MYSQLI_ASSOC);
    }
    //1 重置迭代器
    public function rewind()
    {
        $this->index = 0;
    }
xxx
    //2 验证迭代器是否有数据
    public function valid()
    {
        return $this->index < count($this->data);
    }
    //3 获取当前内容
    public function current()
    {
        $id = $this->data[$this->index];
        return User::find($id);
    }
    //4 移动key到下一个
    public function next()
    {
        return $this->index++;
    }
    //5 迭代器位置key
    public function key()
    {
        return $this->index;
    }
}
//实现迭代遍历用户表
$users = new AllUser();
//可实时修改
foreach ($users as $user){
    $user->add_time = time();
    $user->save();
}

Antara muka Iterator: https://www.php.net/manual/zh /class.iterator. php

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci php iterator apa maksudnya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn