Signatur
function foo(): Generator { yield $value; }
Beschreibung
Perfekt für Streams, Millionen-Zeilen-CSVs, unendliche Sequenzen.
Rückgabewert
Typ
Generator
Beispiele
CSV zeilenweise
<?php
function readCsv(string $path): Generator {
$fh = fopen($path, 'r');
while (($row = fgetcsv($fh)) !== false) {
yield $row;
}
fclose($fh);
}
foreach (readCsv('gross.csv') as $row) { /* je 1 Zeile im Speicher */ }