0

使用此代码,我正在遍历一个对象。为什么这可以在我的带有 PHP 5.2.10 的 WAMP 盒子上工作,而不是在我的 Ubuntu 9.10 安装中使用来自 repo 的 PHP 5.2.10-2?

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

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

}

为 foreach() 提供的参数无效

4

1 回答 1

3

wzzrd 是正确的。这应该在 stackoverflow 上,问题在于 json_decode 的返回值不是您所期望的。

来自http://php.net/json_decode

以适当的 PHP 类型返回以 json 编码的值。值 true、false 和 null(不区分大小写)分别返回为 TRUE、FALSE 和 NULL。如果无法解码 json 或编码的数据深度超过递归限制,则返回 NULL。

您是否在两台服务器上发出相同的请求(&data=xxx 完全相同)?那将是首先要验证的事情。

假设是,您的 php.ini 是否相似?

magic_quotes_gpc=1将改变 $_GET/$_POST/$_COOKIE 并且可能是罪魁祸首。

于 2009-12-07T15:33:25.467 回答