本篇內(nèi)容介紹了“什么是php迭代器”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都做網(wǎng)站、網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的彭澤網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
php迭代器是一種PHP設計模式,是指可在內(nèi)部迭代自己的外部迭代器或類的接口;迭代器模式可以在不需要了解內(nèi)部實現(xiàn)的前提下,遍歷一個聚合對象的內(nèi)部元素。
本文操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦
php迭代器 是什么意思?
PHP 迭代器模式
迭代器:類繼承PHP的Iterator接口,批量操作。
1. 迭代器模式,在不需要了解內(nèi)部實現(xiàn)的前提下,遍歷一個聚合對象的內(nèi)部元素。
2. 相比傳統(tǒng)的編程模式,迭代器模式可以隱藏遍歷元素的所需操作。
接口Iterator
current() 返回當前元素
key() 返回當前元素的鍵
next() 向前移動到下一個元素
rewind() 返回到迭代器的第一個元素
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 驗證迭代器是否有數(shù)據(jù) public function valid() { return $this->index < count($this->data); } //3 獲取當前內(nèi)容 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; } } //實現(xiàn)迭代遍歷用戶表 $users = new AllUser(); //可實時修改 foreach ($users as $user){ $user->add_time = time(); $user->save(); }
“什么是php迭代器”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!