Home > Article > Backend Development > php iterator what does it mean
php Iterator is a PHP design pattern, which refers to an interface that can iterate its own external iterator or class internally; the iterator pattern can traverse an aggregate object without knowing the internal implementation. internal elements.
The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer
What does php iterator mean?
PHP iterator mode
Iterator: The class inherits the Iterator interface of PHP and operates in batches.
1. Iterator mode traverses the internal elements of an aggregate object without knowing the internal implementation.
2. Compared with traditional programming patterns, the iterator pattern can hide the operations required to traverse elements.
InterfaceIterator
current() Returns the current element
key() Returns the key of the current element
next() Moves forward to the next element
rewind() returns the first element of the 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(); }
Iterator interface: https://www.php.net/manual/zh/class .iterator.php
Recommended study: "PHP Video Tutorial"
The above is the detailed content of php iterator what does it mean. For more information, please follow other related articles on the PHP Chinese website!