PHP - 访问数组中的JSON数据值

时间:2013-07-02 19:02:56

标签: php json

如果这是新手问题,我很抱歉,但我不明白如何通过PHP访问JSON数组中的[ids]值。

为什么这不起作用?

$jsonResponse = json_decode($response,true);
print $jsonResponse[2]["ids"];

这是JSON数组:

Array
(
    [0] => analytics#gaData
    [1] => https://www.googleapis.com/analytics/v3/data/ga?ids=ga:123455&dimensions=ga:eventCategory,ga:eventAction,ga:eventLabel&metrics=ga:visits,ga:pageviews&start-date=2013-01-01&end-date=2020-01-01
    [2] => Array
        (
            [start-date] => 2013-01-01
            [end-date] => 2020-01-01
            [ids] => ga:123455
            [dimensions] => ga:eventCategory,ga:eventAction,ga:eventLabel
            [metrics] => Array
                (
                    [0] => ga:visits
                    [1] => ga:pageviews
                )

            [start-index] => 1
            [max-results] => 1000
        )

    [3] => 1000
    [4] => 9

1 个答案:

答案 0 :(得分:0)

您的代码似乎没有任何问题。您的代码应该是打印,在我看来,对象ga:123455 如果执行代码。打印时,此对象将转换为字符串。 PHP将执行(string) ga:123455(调用__toString()上的ga:123455方法)将对象转换为字符串。如果不存在此方法,则必须警告ga:123455无法转换为字符串。 __toString()也可能返回一个空字符串。

我建议您通过print var_dump( $jsonResponse[2]["ids"] );print var_dump( (string) $jsonResponse[2]["ids"] );进行调试。