我有一个.json配置文件。使用PHP,我试图通过json_decode()获取其内容作为对象并对其进行验证。 JSON文件包含多维数据。问题在于动态地深度访问成员。
例如,考虑以下数据:
{
"somebody": {
"name": "Ali",
"age": 13,
"life": {
"stat": "good",
"happy": true
}
}
如何动态访问以下值?
$happy = $data->somebody->life->happy;
动态访问的意思是这样的:
$happyIndex = "somebody->life->happy";
$happy = $data->{$happyIndex};
我也不想使用eval()。
谢谢。
答案 0 :(得分:0)
假设您有JSON数据返回
data="{
"somebody": {
"name": "Ali",
"age": 13,
"life": {
"stat": "good",
"happy": true
}
}"
data = jQuery.parseJSON(data);
然后您可以通过导航
导航到数据的不同部分 var name= data.somebody[0].name;
var age= data.somebody[0].age;
如果“某人”数组中有多个数据,则需要$ .each函数。
PHP版本:
$data='{"somebody":{"name": "Ali","age": "13","life": {"stat": "good","happy": "true"} }}';
$data = json_decode($data,TRUE);
$name= $data['somebody']['name'];
$age= $data['somebody']['age'];
echo("<pre>");
echo($name);
echo($age);
echo("</pre>");
//OUTPUT RESULT Ali 13