php不能使用class,php – 致命错误:不能使用stdClass类型的对象作为数组

我知道这可能很简单,我开始明白我需要怎么做,我意识到这与OO有关但是因为我是OO和json的新手我对这个

http://api.discogs.com/database/search?q=d&page=1&per_page=5有点问题它使用json格式的查询d返回5个结果,所以我用php函数解析它,然后尝试让我们说第一个结果显示thubmnail这是我的解析代码:

$returnData = file_get_contents($queryURL);

$discogsJSON = json_decode($returnData);

其中$queryURL =提供的网址.如果我打印$discogsJSON我得到这个:

stdClass Object

(

[pagination] => stdClass Object

(

[per_page] => 5

[items] => 179465

[page] => 1

[urls] => stdClass Object

(

[last] => http://api.discogs.com/database/search?q=f&per_page=5&page=35893

[next] => http://api.discogs.com/database/search?q=f&per_page=5&page=2

)

[pages] => 35893

)

[results] => Array

(

[0] => stdClass Object

(

[style] => Array

(

[0] => Free Jazz

)

[thumb] => http://api.discogs.com/image/R-90-1672955-1305426452.jpeg

[format] => Array

(

[0] => Vinyl

[1] => LP

[2] => Album

)

[country] => Switzerland

[title] => Steve Lacy - Clinkers

[uri] => /Steve-Lacy-Clinkers/master/54331

[label] => Array

(

[0] => Hat Hut Records

)

[catno] => F

[year] => 1978

[genre] => Array

(

[0] => Jazz

)

[resource_url] => http://api.discogs.com/masters/54331

[type] => master

[id] => 54331

)

[1] => stdClass Object

(

[style] => Array

(

[0] => Free Jazz

)

[thumb] => http://api.discogs.com/image/R-90-1672955-1305426452.jpeg

[format] => Array

(

[0] => Vinyl

[1] => LP

[2] => Album

)

[country] => Switzerland

[title] => Steve Lacy - Clinkers

[uri] => /Steve-Lacy-Clinkers/release/1672955

[label] => Array

(

[0] => Hat Hut Records

)

[catno] => F

[year] => 1978

[genre] => Array

(

[0] => Jazz

)

[resource_url] => http://api.discogs.com/releases/1672955

[type] => release

[id] => 1672955

)

[2] => stdClass Object

(

[style] => Array

(

[0] => Alternative Rock

[1] => Goth Rock

[2] => Heavy Metal

)

[thumb] => http://api.discogs.com/image/R-90-2785283-1300918365.jpeg

[format] => Array

(

[0] => CD

[1] => Compilation

[2] => Unofficial Release

)

[country] => Russia

[title] => HIM (2) - Overload Hits

[uri] => /HIM-Overload-Hits/release/2785283

[label] => Array

(

[0] => FullHouse Records

)

[catno] => F?????

[year] => 2003

[genre] => Array

(

[0] => Rock

)

[resource_url] => http://api.discogs.com/releases/2785283

[type] => release

[id] => 2785283

)

[3] => stdClass Object

(

[style] => Array

(

[0] => Drone

[1] => Ambient

)

[thumb] => http://api.discogs.com/image/R-90-3108621-1316178067.jpeg

[format] => Array

(

[0] => CDr

[1] => Album

[2] => Limited Edition

)

[country] => Russia

[title] => Solar Ocean - Twillight October

[uri] => /Solar-Ocean-Twillight-October/release/3108621

[label] => Array

(

[0] => Necrophone

)

[catno] => F

[year] => 2010

[genre] => Array

(

[0] => Electronic

)

[resource_url] => http://api.discogs.com/releases/3108621

[type] => release

[id] => 3108621

)

[4] => stdClass Object

(

[style] => Array

(

[0] => Techno

[1] => Electro

[2] => Tech House

[3] => Minimal

)

[thumb] => http://api.discogs.com/image/R-90-699054-1161976299.jpeg

[format] => Array

(

[0] => Vinyl

[1] => 12"

[2] => Box Set

[3] => Compilation

[4] => Limited Edition

)

[country] => Germany

[title] => Various - Cocoon Compilation F

[uri] => /Various-Cocoon-Compilation-F/master/33655

[label] => Array

(

[0] => Cocoon Recordings

[1] => Cocoon Compilation

)

[catno] => COR LP 011

[year] => 2006

[genre] => Array

(

[0] => Electronic

)

[resource_url] => http://api.discogs.com/masters/33655

[type] => master

[id] => 33655

)

)

)

这是完全正确的,我可以看到我想要的所有数据,但是当我尝试访问(比如说第一个的缩略图)时:

echo $discogsJSON['results']['0']['thumb'];

我留下:致命错误:不能使用stdClass类型的对象作为数组

我想从这里有足够的信息来构建正确的echo语句,但任何人都可以向我解释正确的数据输出背后的OO理论吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值