PHP菜鸟在这里。我正在构建一个iPhone应用程序,该应用程序将JSON blob发送到Web服务器。在服务器端,我正在接收 JSON 并尝试访问对象包含的 3 个字段。
我身上发生了两件奇怪的事情,我不知道如何解决:
- 打印解码的对象(下面的$post_data)时,我没有得到任何东西。
- 实际上,在不解码的情况下打印对象时,我能够在Xcode中打印完整的对象($content下面),但不知道如何访问对象中的各种字段。
我的PHP代码:
$con = mysql_connect("127.0.0.1","root", "") or die('Could not connect: ' . mysql_error());
$content = file_get_contents('php://input');
$post_data = json_decode($content , true);
echo $content; --> prints the object properly
echo $post_data; --> does not print anything
echo $content->lat; --> does not print anything
我的 JSON 对象:
{
"lat" : 37.33233141,
"long" : -122.0312186,
"speed" : 0
}
任何帮助将不胜感激。
这是因为json_decode($content, true)
返回一个数组,如果您回显容器,该数组在显示时出现问题。
尝试做echo $post_data['lat'];
您也可以尝试使用 print_r($post_data);
让它输出变量的实际内容,以便查看某些内容是否无法正常工作