Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中读取json对象_Php_Json - Fatal编程技术网

在php中读取json对象

在php中读取json对象,php,json,Php,Json,我有一些json对象,如下所示: {"g_aaa77": {"'title'":"title2", "'r_a6cff'": {"name":"name2","price":"2"}, "'r_7fc7b'": {"name":"name22","price":"22"} }, "g_a36b5": {"title":"title1",

我有一些json对象,如下所示:

{"g_aaa77":
    {"'title'":"title2",
        "'r_a6cff'":                
            {"name":"name2","price":"2"},
        "'r_7fc7b'":   
            {"name":"name22","price":"22"}
     },
 "g_a36b5":
     {"title":"title1",
         "r_4e122": 
             {"name":"name1","price":"1"},
         "r_155fa":
             {"name":"name11","price":"11"}
     }
}
g_aaa77
g_a36b5
是一个随机字符串

另外,
r_a6cff
r_7fc7b
r_4e122
r_155fa

如何读取此json

通常是这样的:

$json = { .. };

$json->g_a36b5->title;
但我没有“g_a36b5”。它是一个随机字符串

也许我必须把这个json转换成另一个或类似的东西


您能告诉我如何阅读此json吗?

首先,对您的json进行解码

$array = json_decode($json, true);
现在您需要使用foreach循环,因为您仍然不知道键是什么:

foreach($array AS $key => $subarray) {
    echo $key . ": " . print_r($subarray, true);
}
如果不想保留这些键,只需删除那些带有
array\u值的随机字符串即可

$array = array_values($array);
现在,您仍然可以循环遍历它,或者直接通过数字键寻址数组元素:

print_r($array[0]);
echo $array[1]['title']; // title1

示例:

从json_解码开始您可以使用
json_decode()
然后使用
foreach
循环