Ce face foreach
foreach este cea mai simplă metodă de a trece prin toate elementele unui tablou. La fiecare pas, elementul curent este pus în variabila de după as.
Dacă ai nevoie și de cheie, folosește forma $cheie => $valoare.
Exemple
Exemplul 1: Doar valorile
<?php
$orase = ["Iași", "Cluj", "Timișoara"];
foreach ($orase as $oras) {
echo $oras . "\n";
}
Rezultat
Iași
Cluj
Timișoara
Exemplul 2: Chei și valori
<?php
$preturi = ["pâine" => 5, "lapte" => 8, "ouă" => 12];
foreach ($preturi as $produs => $pret) {
echo "$produs costă $pret lei\n";
}
Rezultat
pâine costă 5 lei
lapte costă 8 lei
ouă costă 12 lei
Exemplul 3: Modificarea elementelor prin referință
Cu & în fața variabilei modifici direct tabloul original.
<?php
$numere = [1, 2, 3];
foreach ($numere as &$n) {
$n = $n * 10;
}
unset($n);
print_r($numere);
Rezultat
Array
(
[0] => 10
[1] => 20
[2] => 30
)
Greșeli frecvente
- Modifici
$valoarefără&și te aștepți să se schimbe tabloul. Fără referință, lucrezi pe o copie. - Nu faci
unsetpe variabila referință după buclă. Ea rămâne legată de ultimul element și îl poate modifica din greșeală mai târziu.