Референце у foreach у PHP-у
При раду са петљом foreach
мењање променљиве за елементе
не доводи до промена у самом низу:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
$elem++;
}
var_dump($arr); // неће се променити
?>
Међутим, жељени ефекат се може постићи ако променљиву за елементе декларишемо као референцу. У том случају промене ове променљиве ће доводити до промена у низу:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem++;
}
var_dump($arr); // ће се променити
?>
Исправите следећи код тако да ради по замишљеном:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem = sqrt($elem);
}
var_dump($arr);
?>
Исправите следећи код тако да ради по замишљеном:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as &$elem) {
$elem ** 2;
}
var_dump($arr);
?>