veranschaulichen
1. Das Implementieren der Schnittstelle anderer Iteratorfunktionen entspricht der Installation einer Shell auf anderen Iteratoren. Es gibt nur eine Methode.
2. Aggregationsiteratoren können mit vielen Iteratoren kombiniert werden, um eine effizientere Iteration zu erreichen.
Beispiel
Die Klasse MainIterator implementiert Iterator { privat $var = array(); öffentliche Funktion __construct($array) //Konstruktorfunktion, Objektarray initialisieren { if (is_array($array)) { $this->var = $array; } } öffentliche Funktion rewind() { echo "zurückspulenn"; reset($this->var); //Den internen Zeiger des Arrays auf das erste Element richten } öffentliche Funktion current() { $var = current($this->var); // Den aktuellen Wert im Array zurückgeben echo "current: $varn"; return $var; } öffentlicher Funktionsschlüssel() { $var = key($this->var); //Den Schlüsselnamen der aktuellen Einheit zurückgeben, auf die der interne Zeiger im Array zeigt echo „key: $varn“; return $var; } öffentliche Funktion next() { $var = next($this->var); //Den Wert der nächsten Einheit zurückgeben, auf die der interne Zeiger des Arrays zeigt echo "next: $varn"; return $var; } öffentliche Funktion valid() { return !is_null(key($this->var); //Bestimmen Sie, ob der Schlüssel der aktuellen Einheit leer ist } }
Das Obige ist eine Einführung in PHP-Aggregatiteratoren. Ich hoffe, es wird für alle hilfreich sein.