У меня странная проблема с моим PHP-скриптом. У меня есть массив $ ключи, которые определены в начале сценария:PHP foreach loop не проходит, хотя данные в массиве
$keys = array("name","date","event","location","address","description","link","linkname");
в какой-то момент позже я обхвата через массив, пытаясь напечатать ключи:
foreach ($keys as $key_show) {
echo ($key_show);
}
И на самом деле ничего не напечатано. Я положил var_dump ($ keys) перед циклом, и кажется, что массив по-прежнему заполняется элементами сверху в этой точке скрипта. Интересно, что, как только я поместил там var_dump, ключи также появились в цикле foreach.
Полный сценарий может быть см here
Если вы последовательно проверяете назначение и цикл foreach, он работает правильно и отображает все значения. Между назначением и циклом должно быть что-то, что вызывает вашу проблему. –
Вот что я подумал, следовательно, проверим с помощью var_dump. Массив все еще находится в старом состоянии, вплоть до цикла foreach, а также внутри цикла. По крайней мере, это то, что отображает var_dump. – 1nterference
Просто из любопытства замените 'foreach' на' while'. У меня была эта проблема немного назад, и по какой-то странной причине она работала в цикле 'while'. – christopher