如何读取php json解码数组

时间:2018-05-29 22:49:01

标签: php

我使用$JSON = var_dump(json_decode($MyJSON, true));时收到以下字符串 如果我回应$ JSON: -

array(1) {
["test"]=> array(2) {
    [0]=> array(3) {
        ["subject"]=> array(2) {
            ["type"]=> string(10) "blank node" ["val"]=> string(4) "_:b0" 
        } 
        ["predicate"]=> array(2) {
            ["type"]=> string(3) "IRI" ["val"]=> string(47) "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" 
        }
        ["object"]=> array(2) {
            ["type"]=> string(3) "IRI" ["val"]=> string(25) "http://schema.org/WebPage" 
        }
    }
    [1]=> array(3) {
        ["subject"]=> array(2) {
            ["type"]=> string(10) "blank node" ["val"]=> string(4) "_:b0" 
        }
        ["predicate"]=> array(2) {
            ["type"]=> string(3) "IRI" ["val"]=> string(28) "http://schema.org/breadcrumb" 
        }
        ["object"]=> array(2) {
            ["type"]=> string(10) "blank node" ["val"]=> string(4) "_:b1" 
        }
    } 
 }
}

如果我想echo $JSON->test[0]->predicate->val什么是正确的语法怎么办?对不起,我是初学者。这将是一个很大的帮助。提前谢谢。

2 个答案:

答案 0 :(得分:1)

删除var_dump

$JSON = var_dump(json_decode($MyJSON, true));

所以$ JSON变成了

$JSON = json_decode($MyJSON, true);

然后,您将能够通过

访问所需的变量
$JSON['test'][0]['predicate']['val'];

答案 1 :(得分:0)

你是否已经尝试json_decode($MyJson)而不是第二个参数?这将返回一个STD对象,该对象应该类似于您想要访问json对象的方式。有关详细信息,请参阅PHP文档(第二个参数$ assoc = true表示它将转换为关联数组):json_decode