如何在此Steam API中访问webm->max
?这是令我迷惑的顺序[{
,一个在对象之前的数组?我不太确定这里的目标..
我试过了:
$gameTrailer = $game_json->57690->data->movies[0]->webm->max;
和
$gameTrailer = $game_json['57690']['data']['movies']['webm']['max'];
API文本是这样的:
"movies": [{
"id": 2029441,
"name": "Tropico 4 Gameplay Trailer",
"thumbnail": "http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/2029441\/movie.293x165.jpg?t=1447358847",
"webm": {
"480": "http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/2029441\/movie480.webm?t=1447358847",
"max": "http:\/\/cdn.akamai.steamstatic.com\/steam\/apps\/2029441\/movie_max.webm?t=1447358847"
},
"highlight": true
}],
和“电影”在于:
{"57690": {
"data": {
假设我总是想要一个数组中的第一部电影(在这种情况下是一个数组)。提前谢谢。
答案 0 :(得分:1)
正确的语法:
$game_json->{57690}->data->movies[0]->webm->max
当你有一个带有数字键的对象时,你必须用大括号包装键名(数字键不是有效的属性名)。
如果使用关联选项:
json_decode( $data, True );
你的第二次尝试几乎是正确的。只需在movie
之后添加正确的索引:
$gameTrailer = $game_json['57690']['data']['movies'][0]['webm']['max'];