Php 错误:注意:尝试获取非对象的属性

Php 错误:注意:尝试获取非对象的属性,php,betfair,Php,Betfair,我有以下获取数据列表的代码,我正在尝试按“名称”筛选此数据,但出现以下错误: 错误:注意:尝试获取非对象的属性 代码 数据/结果 以下是我打印“$bplevents”时的结果,如下所示: print_r($bplevents); 输出: Array ( [0] => Array ( [event] => Array ( [id] => 27732436 [name] => Leicester v Southampton [countryCode] => GB [t

我有以下获取数据列表的代码,我正在尝试按“名称”筛选此数据,但出现以下错误:

错误:注意:尝试获取非对象的属性

代码 数据/结果 以下是我打印“$bplevents”时的结果,如下所示:

print_r($bplevents);
输出:

Array ( [0] => Array ( [event] => Array ( [id] => 27732436 [name] => Leicester v Southampton [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-03T12:30:00.000Z ) [marketCount] => 13 ) [1] => Array ( [event] => Array ( [id] => 2022802 [name] => Barclays Premier League [countryCode] => GB [timezone] => Europe/London [openDate] => 2015-11-21T12:45:00.000Z ) [marketCount] => 23 ) [2] => Array ( [event] => Array ( [id] => 27732438 [name] => Liverpool v Tottenham [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T16:30:00.000Z ) [marketCount] => 13 ) [3] => Array ( [event] => Array ( [id] => 27732439 [name] => Man Utd v Everton [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-03T15:00:00.000Z ) [marketCount] => 13 ) [4] => Array ( [event] => Array ( [id] => 5767793 [name] => Season Match Bets [countryCode] => GB [timezone] => Europe/London [openDate] => 2015-08-16T12:30:00.000Z ) [marketCount] => 17 ) [5] => Array ( [event] => Array ( [id] => 19478157 [name] => Head to Head Leagues [countryCode] => GB [timezone] => Europe/London [openDate] => 2015-08-16T12:30:00.000Z ) [marketCount] => 2 ) [6] => Array ( [event] => Array ( [id] => 27732449 [name] => Arsenal v Watford [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 14 ) [7] => Array ( [event] => Array ( [id] => 27732434 [name] => Aston Villa v Chelsea [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T11:45:00.000Z ) [marketCount] => 12 ) [8] => Array ( [event] => Array ( [id] => 27732448 [name] => Bournemouth v Man City [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 13 ) [9] => Array ( [event] => Array ( [id] => 27732444 [name] => Norwich v Newcastle [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 13 ) [10] => Array ( [event] => Array ( [id] => 27732446 [name] => Sunderland v West Brom [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 13 ) [11] => Array ( [event] => Array ( [id] => 27732447 [name] => West Ham v C Palace [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 13 ) [12] => Array ( [event] => Array ( [id] => 27732443 [name] => Stoke v Swansea [countryCode] => GB [timezone] => Europe/London [openDate] => 2016-04-02T14:00:00.000Z ) [marketCount] => 13 ) )

$bplevents正在传递数组而不是对象。正确的称呼方法如下

print_r($bplevents[0]['element']['namne']);

输出是一个数组,不是一个对象。使用$bplevents->name可以调用对象。 我会使用$bplevents['name'],这是调用数组的正确方法

编辑: 请检查您的输出。你的输出告诉你哪里出了问题。你有一个多维数组。 也许,在美化您的输出后,我意识到您应该访问以下内容:
$bplevents[0]['event']['name']
。。 你也可以

foreach($bplevents as $amount => $array){
     print_r($array['event']['name']);
}

所以,
$bplevents
不是一个对象,它只是一个多维数组。使用
[]
访问所需的值。我遇到以下错误:(!)注意:未定义索引:name inI遇到以下错误:(!)注意:未定义索引:name inI遇到以下错误:(!)注意:未定义索引:name in您有一个数组。。。因此,您需要遍历第一个数组,或者只需硬编码所需的数组。。例如$bpevents[0]['name']。或者您可以这样迭代:foreach($bpevents as$amount=>$array){print_r($array['name']);}使用此命令:$bplevents[0]['name']仍然会得到相同的错误。我还尝试如下循环数组:foreach($bplevents as$array){$listarr[]=$array['name'];},仍然存在错误
foreach($bplevents as $amount => $array){
     print_r($array['event']['name']);
}