Почему эта итерация PHP не работает?
Я хочу превратить результаты цикла foreach в строковую переменную, которую потом можно будет использовать повсюду (поэтому мне не нужно везде вставлять цикл foreach). У меня есть это:
foreach($pairs as $d=>$m) {
$orderedpairs .= "[".$d."],[".$m."]"+"<br />";
}
echo $orderedpairs;
Если я заменю оператор присваивания на "echo", он будет работать нормально, так что цикл в порядке, я думаю, что речь идет только о присваивании переменной. Спасибо!
4 ответа
Знак плюс вызывает сбой вашей конкатенации - измените его на .
Вопреки тому, что говорят другие, область действия вашей переменной не является проблемой. Вы МОЖЕТЕ объявить их внутри цикла и получить к ним доступ после этого. Переменные PHP не ограничены как Java, C# и другие языки.
У вас есть + там для объединения. Тебе нужно.
Также вы должны определить $orderpairs как пустую строку перед циклом.
На самом деле в вашем случае нет необходимости объединяться с оператором, вы можете просто сделать:
$orderedpairs .= "[$d],[$m]<br />";
и PHP заменит переменные их значениями.
Был ли $orderpairs объявлен пустой строкой перед циклом, чтобы создать экземпляр и перенести его в область видимости? Также окончательный + должен быть на самом деле.?