我一直在编写一个小脚本来获取用户的月度视图。当我获得用户的访问令牌并且我var_dump file_get_contents($ url)时,我得到一个正确的json,看起来像这样。
$views = file_get_contents('https://www.googleapis.com/youtube/analytics/v1/reports?ids=channel%3D%3DMINE&start-date=2014-09-29&end-date=2014-10-29&metrics=views&access_token='.$responseObj->access_token);
var_dump($views);
结果是:
{
"kind": "youtubeAnalytics#resultTable",
"columnHeaders": [
{
"name": string,
"dataType": string,
"columnType": string
},
],
"rows": [
[
2204
]
]
}
我不确定如何使用JSON导入此号码" 2204"并回应它。目前我正在尝试:
$monthlyViews = $views['rows'][0];
var_dump($monthlyViews)
但这不起作用,我不知道为什么。我没有得到任何回复,除了错误说:
致命错误:不能在第39行的/home/a1059253/public_html/oauth/callback.php中使用字符串偏移作为数组
答案 0 :(得分:0)
首先,您需要解析JSON对象:
$json = json_decode($views);
PHP将JSON解析为对象,而不是数组,因此您的代码应为:
$monthlyViews = $json->rows[0][0];
echo $monthlyViews;