Почему этот код работает на PHP версии 5.2.10, а не на PHP версии 5.2.10-2? - PullRequest
0 голосов
/ 07 декабря 2009

С этим кодом я перебираю объект. Почему это работает на моем WAMP-боксе с PHP 5.2.10, а не на моей установке Ubuntu 9.10 с PHP 5.2.10-2 из репозитория?

$incomingData = json_decode($_POST['data']);

foreach($incomingData as $key => $action)
{

}

Указан неверный аргумент для Еогеасп ()

1 Ответ

3 голосов
/ 07 декабря 2009

wzzrd правильно. Вероятно, это должно происходить в стеке, и проблема будет в том, что возвращаемое значение из json_decode не соответствует ожидаемому.

С http://php.net/json_decode

Возвращает значение, закодированное в json в соответствующий тип PHP. Значения верны, false и null (без учета регистра) возвращается как TRUE, FALSE и NULL соответственно. NULL возвращается, если JSON не может быть декодирован или, если закодированные данные глубже, чем предел рекурсии.

Вы делаете один и тот же запрос на обоих серверах (& data = xxx абсолютно одинаков)? Это было бы первым, что нужно проверить.

Если да, то похожи ли ваши php.ini?

magic_quotes_gpc=1 изменит $ _GET / $ _ POST / $ _ COOKIE и является вероятным виновником.

...