Foreach по ссылке работает иначе, если присвоение переменной находится внутри foreachPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Foreach по ссылке работает иначе, если присвоение переменной находится внутри foreach

Сообщение Anonymous »

Может кто-нибудь объяснить, почему эти два фрагмента кода возвращают разные значения?

Код: Выделить всё

foreach($z = [[1,2,3],[4,5,6]] as &$i)
{
$i[] = 6;
}
echo json_encode($z), "\n"; // prints "[[1,2,3],[4,5,6]]"

// VS

$z = [[1,2,3],[4,5,6]];
foreach($z as &$i)
{
$i[] = 6;
}
echo json_encode($z); // prints "[[1,2,3,6],[4,5,6,6]] "
Я ожидал, что присвоение $z массиву в любом случае произойдет до foreach, но что-то в помещении назначения внутри foreach приводит к тому, что массив, хранящийся в $z, не будет влияет добавление в конец массива $i.

Подробнее здесь: https://stackoverflow.com/questions/791 ... in-foreach
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Присвоение переменной типа "Сборка" делает копию, а не по ссылке?
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Присвоение переменной типа object делает копию, а не по ссылке?
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Подсказки по вводу, цепное присвоение и множественное присвоение
    Anonymous » » в форуме Python
    0 Ответы
    41 Просмотры
    Последнее сообщение Anonymous
  • Foreach по ссылке не работает, если переменная назначена прямо в определении foreach
    Anonymous » » в форуме Php
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Почему разрешено присвоение временного значения константной ссылке?
    Anonymous » » в форуме C++
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»