for, foreach, while, do-while und Generatoren für Memory-effiziente Iteration.
for
for ($i = 0; $i < 10; $i++) {
echo $i;
}
foreach — die häufigste Schleife in PHP
$users = ['Anna', 'Ben', 'Clara'];
foreach ($users as $user) {
echo $user;
}
// Mit Index:
foreach ($users as $i => $user) {
echo "$i: $user";
}
// Assoziatives Array:
$prices = ['brot' => 3.50, 'milch' => 1.20];
foreach ($prices as $produkt => $preis) {
echo "$produkt kostet $preis €\n";
}
while & do-while
while ($queue->hasJobs()) {
$queue->processNext();
}
do {
$eingabe = readline('Fortfahren? (j/n) ');
} while ($eingabe !== 'n');
break & continue
foreach ($items as $item) {
if ($item->deleted) continue; // überspringen
if ($item->critical) break; // Schleife verlassen
process($item);
}
Generatoren mit yield — Memory-effizient
Wenn du Millionen Zeilen aus einer Datei liest, ist ein Array-Return ein Speicher-Problem. Generatoren produzieren Werte on-demand:
function readCsv(string $path): Generator {
$handle = fopen($path, 'r');
while (($row = fgetcsv($handle)) !== false) {
yield $row;
}
fclose($handle);
}
foreach (readCsv('gross.csv') as $row) {
// verarbeitet 1 Zeile nach der anderen, egal wie groß die Datei
}Häufige Fragen
Zu welcher Sprache gehört dieses Kapitel?
Dieses Kapitel ist Teil der PHP-Referenz auf programmierung.net.
Wie ist das Kapitel aufgebaut?
Jedes Kapitel folgt derselben Struktur: Konzept, Syntax, Beispiele und Randfälle. Code-Beispiele sind kopierfertig und syntax-geprüft.
Wo finde ich die vollständige Übersicht?
Alle Kapitel findest du in der Sidebar oder in der PHP-Übersicht. Für Funktionen & Klassen gibt es die separate Referenz.