Generatoren

Statt ein Iteratorobjekt zu definieren, bieten Generatoren in PHP eine einfache Möglichkeit an, größere Datenmengen bereitzustellen. Generatoren haben gegenüber traditionellen Arrays den Vorteil, dass nicht die gesamten Daten im Hauptspeicher gehalten werden müssen, sondern immer nur das aktuelle Element betrachtet wird. Folgendes Beispiel zeigt dies:

Die Funktion ungeradeZahlen() erzeugt die ungeraden Zahlen bis zur Zahl $bis. Dabei werden diese Zahlen nicht in ein Array geschrieben, sondern die foreach-Schleife kann die Funktion wie ein Array ansprechen. Es wird jedoch mit Hilfe von yield() immer nur ein Wert an das Hauptprogramm übergeben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert