Nuorodos foreach cikle PHP
Dirbant su foreach ciklu,
elementų kintamojo keitimas
nekeičia paties masyvo:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
$elem++;
}
var_dump($arr); // nepasikeis
?>
Tačiau norimo efekto galima pasiekti, jei paskelbiame kintamąjį elementams nuoroda. Šiuo atveju šio kintamojo pakeitimai lems pakeitimus masyve:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem++;
}
var_dump($arr); // pasikeis
?>
Ištaisykite šį kodą taip, kad jis veiktų pagal užsidėtą tikslą:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem = sqrt($elem);
}
var_dump($arr);
?>
Ištaisykite šį kodą taip, kad jis veiktų pagal užsidėtą tikslą:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem ** 2;
}
var_dump($arr);
?>