illustrer
1. Implémenter l'interface d'autres fonctions d'itérateur équivaut à installer un shell sur d'autres itérateurs. Il n'y a qu'une seule méthode.
2. Les itérateurs d'agrégation peuvent être combinés avec de nombreux itérateurs pour obtenir une itération plus efficace.
Exemple
la classe MainIterator implémente Iterator { privé $var = tableau(); public function __construct($array) //Fonction constructeur, initialise le tableau d'objets { si (is_array($array)) { $this->var = $tableau ; } } fonction publique rewind() { echo "rembobinagen" ; reset($this->var); //Pointez le pointeur interne du tableau sur le premier élément } fonction publique actuelle() { $var = current($this->var); // Renvoie la valeur actuelle dans le tableau echo "current: $varn"; renvoie $var ; } clé de fonction publique() { $var = key($this->var); //Renvoie le nom de clé de l'unité actuelle pointée par le pointeur interne dans le tableau echo "key: $varn"; renvoie $var ; } fonction publique suivant() { $var = next($this->var); //Renvoie la valeur de l'unité suivante pointée par le pointeur interne du tableau echo "next: $varn"; renvoie $var ; } fonction publique valide() { return !is_null(key($this->var); //Détermine si la clé de l'unité actuelle est vide } }
Ce qui précède est une introduction aux itérateurs d'agrégation PHP. J'espère que cela sera utile à tout le monde.