Modèle d'itérateurParcourt les éléments internes d'un objet agrégé sans connaître les éléments internes. Par rapport au modèle de programmation traditionnel, le Modèle d'itérateur peut masquer les éléments du parcours Toutes les opérations
<?php /* * 迭代器模式 */ class All implements \Iterator { protected $ids; protected $index; public function __construct($data) { $this->ids = $data; } public function current() //获取当前的元素 { return $this->ids[$this->index]; } public function next() //获取下一个元素 { $this->index++; } public function valid() //验证当下是否还有下一个元素 { return $this->index < count($this->ids); } public function rewind() //重置迭代器指针 { $this->index = 0; } public function key() //迭代器指针的位置 { return $this->index; } } $arr = ['1', '2', '4']; //客户端 $users = new All($arr); foreach ($users as $user) { var_dump($user); }
Recommandations associées :
Modèle d'itérateur PHP interstellaire pour l'hégémonie
Référence de variable PHP Modèle d'itérateur PHP (citant l'implémentation SPL)
Observations sur les modèles de conception PHP Explication détaillée du mode utilisateur
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!