foreach und Schleifensteuerung
Durchlaufen Sie Arrays mit foreach und verwenden Sie break und continue.
foreach und Schleifensteuerung ist eine kostenlose PHP Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des PHP Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.
foreach: Die Array-Schleife
foreach ist die idiomatische Möglichkeit, Arrays und Objekte in PHP zu durchlaufen – Sie müssen keinen Index manuell verwalten.
foreach bei indizierten Arrays
Durchlaufen Sie die Werte eines indizierten Arrays:
<?php
$fruits = ['apple', 'banana', 'cherry'];
foreach ($fruits as $fruit) {
echo $fruit . PHP_EOL;
}
// apple
// banana
// cherryforeach mit Schlüssel => Wert
Rufen Sie in jeder Iteration sowohl den Schlüssel als auch den Wert ab:
<?php
$person = ['name' => 'Alice', 'age' => 30, 'city' => 'London'];
foreach ($person as $key => $value) {
echo "$key: $value" . PHP_EOL;
}
// name: Alice
// age: 30
// city: LondonVerschachteltes foreach
Durchlaufen Sie Arrays aus Arrays (z. B. Datenbank-Ergebnismengen):
<?php
$users = [
['name' => 'Alice', 'role' => 'admin'],
['name' => 'Bob', 'role' => 'user'],
];
foreach ($users as $user) {
echo $user['name'] . ' is ' . $user['role'] . PHP_EOL;
}Array-Elemente ändern
Um Array-Werte innerhalb von foreach zu ändern, verwenden Sie eine Referenz &$value:
<?php
$prices = [10, 20, 30];
foreach ($prices as &$price) {
$price *= 1.1; // 10% price increase
}
unset($price); // always unset after reference loop!
print_r($prices); // [11, 22, 33]break in foreach
Verwenden Sie break, um eine foreach-Schleife vorzeitig zu verlassen:
<?php
$ids = [1, 2, 3, 4, 5];
$target = 3;
foreach ($ids as $id) {
if ($id === $target) {
echo 'Found: ' . $id;
break;
}
}continue in foreach
Verwenden Sie continue, um bestimmte Elemente zu überspringen:
<?php
$numbers = [1, 2, 3, 4, 5, 6];
foreach ($numbers as $n) {
if ($n % 2 === 0) continue; // skip evens
echo $n . ' '; // 1 3 5
}list() mit foreach
Entpacken Sie innere Arrays direkt mit list() oder der Kurzschreibweise []:
<?php
$coords = [[10, 20], [30, 40], [50, 60]];
foreach ($coords as [$x, $y]) {
echo "x=$x, y=$y" . PHP_EOL;
}
// x=10, y=20
// x=30, y=40Objekte durchlaufen
foreach funktioniert mit Objekten – standardmäßig werden öffentliche Eigenschaften durchlaufen:
<?php
class Config {
public string $host = 'localhost';
public int $port = 3306;
public string $db = 'myapp';
}
foreach (new Config() as $key => $val) {
echo "$key = $val" . PHP_EOL;
}Generator als foreach-Ziel
Mit PHP-Generatoren können Sie große Datenmengen durchlaufen, ohne alles in den Speicher zu laden:
<?php
function range100(): Generator {
for ($i = 1; $i <= 100; $i++) {
yield $i;
}
}
foreach (range100() as $num) {
if ($num > 5) break;
echo $num . ' '; // 1 2 3 4 5
}array_walk vs. foreach
array_walk wendet einen Callback direkt auf jedes Element an – eine Alternative zu foreach für einfache Transformationen:
<?php
$names = ['alice', 'bob', 'carol'];
array_walk($names, function (&$name) {
$name = ucfirst($name);
});
print_r($names); // ['Alice', 'Bob', 'Carol']Schnelltest
Was sollten Sie nach der Schleife tun, wenn Sie in foreach ein Array per Referenz durchlaufen?
Zusammenfassung: foreach und Schleifenkontrolle
Wichtige Punkte:
foreach ($arr as $val)für Werteforeach ($arr as $key => $val)für Schlüssel-Wert-Paare- Verwenden Sie die Referenz
&$val, um Werte direkt zu ändern – heben Sie die Referenz danach immer mit unset auf breakundcontinuefunktionieren innerhalb von foreach- Entpacken Sie innere Arrays mit
[$a, $b] - Mit Generatoren kann foreach große Datenmengen speichereffizient verarbeiten
Lerne PHP mit einem KI-Tutor — kostenlos
Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.
- Kurse
- 49
- Lektionen
- 195
Häufig gestellte Fragen
Ist die Lektion „foreach und Schleifensteuerung“ kostenlos?
Ja — der vollständige Text von „foreach und Schleifensteuerung“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des PHP Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „foreach und Schleifensteuerung“?
Durchlaufen Sie Arrays mit foreach und verwenden Sie break und continue. Du übst PHP Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um PHP Academy zu starten?
Keine Vorkenntnisse erforderlich. PHP Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „foreach und Schleifensteuerung“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser PHP Academy-Lektion Code schreiben und ausführen?
Ja. Jede PHP Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- if, elseif und else
- Switch- und Match-Anweisungen
- for- und while-Schleifen
- foreach und Schleifensteuerung