使用php变量索引从json中检索数据

时间:2015-03-20 10:45:31

标签: php json codeigniter concatenation codeigniter-2

这是我的json

在php中

$json = json_decode($finalAppData, true); // decode the JSON into an associative array


//suppose this is $link = ['appInfo']['items'][0]['screen']['items'][0]['screen']['items'][0];

此代码无效。

echo $json .$link."['screen']['menuHeader']";

生成输出

Array['appInfo']['items'][0]['screen']['items'][0]['screen']['items'][0]['screen']['menuHeader'].

但是如果我简单地使用

,我想要看到的文字值
echo $json['appInfo']['items'][0]['screen']['items'][0]['screen']['items'][0]['screen']['menuHeader'];

如何使用存储在变量中的索引从php中的json输出数据。

1 个答案:

答案 0 :(得分:1)

这应该与您想要的类似:

$json = json_decode($finalAppData, true); 

$link = "['appInfo']['items'][0]['screen']['items'][0]['screen']['items'][0]";

# Method #1
eval("echo \$json${link}['screen']['menuHeader'];");

# Method #2
$item = "\$json${link}";
eval("echo ${item}['screen']['menuHeader'];");

eval()接受一串PHP代码并解释它。在这种情况下,嵌套密钥作为字符串存储在$link中,然后与将被解释为$json数组的字符串连接,从而生成将发送到{{的PHP代码字符串。 1}}被解释。