我从monogodb中获取了location:[],然后将其编码为json,然后将其打印在屏幕上。这是输出:
{"57237036d89c45e1e3fda94e":{"_id":{"$id":"57237036d89c45e1e3fda94e"},"location":[33.7715,72.7511]}}
现在的问题是,我试图仅从此JSon中获取位置,所以我对其进行了解码。这是代码:
echo $arr= json_encode(iterator_to_array($cursor));
$j= json_decode($arr,true);
var_dump( $j->location);
var_dump返回null。此外,它显示以下错误
Trying to get property of non-object
PS:我知道这个问题已经问过很多次了,但是我找不到解决方案。
$j->location
仍然无效。您可以通过以下两种方法获取位置
你的位置是 $j->57237036d89c45e1e3fda94e->location
$arr = '{"57237036d89c45e1e3fda94e":{"_id":{"$id":"57237036d89c45e1e3fda94e"},"location":[33.7715,72.7511]}}';
$j= json_decode($arr);
$x = '57237036d89c45e1e3fda94e';
var_dump( $j->$x->location);
// if you don't want to declare $x
var_dump( $j->{'57237036d89c45e1e3fda94e'}->location);
或使用数组方法
$j = json_decode($arr, true);
var_dump( $j['57237036d89c45e1e3fda94e'][location]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句