我正在尝试从https://fantasy.premierleague.com/api/bootstrap-static/
中提取与特定游戏周相关的数据正如您在网页上看到的那样,在“事件”数组中有多个对象(每个游戏周都是使用“ id”字段标识的一个对象)。
我正在尝试打印游戏第1周的平均得分。
我一直收到“未定义的索引:名称”错误。有人可以帮我弄清楚我在做什么错吗?
从代码中可以看到,我尝试了以下操作:
我正在尝试打印游戏第1周的平均得分。
$json2=file_get_contents("https://fantasy.premierleague.com/api/bootstrap-
static/");
$data2 = json_decode($json2, true);
<?PHP
if($data2['events']['id']=1)
{
?>
<td><?PHP print $data2['events']['name']; ?></td>
<td><?PHP print $data2['events']['average_entry_score']; ?></td>
<?PHP
}
?>
答案 0 :(得分:0)
您的代码有些错误:
<?PHP
将为您提供PHP解析错误:语法错误,意外的“ <”,
if($data2['events']['id']=1)
您正在分配一个值,而不是进行比较,该值应该为if($data2['events']['id'] == 1)
-由于$data2['events']['id']
不存在,它将永远不会触发。您已经说过$data2['events']
是一个数组,因此您可以通过以下方式访问其数据
$data2['events'][0]
,$data2['events'][1]
等
实现您想要的正确代码是:
<?php
$json2 = file_get_contents("https://fantasy.premierleague.com/api/bootstrap-static/");
$data2 = json_decode($json2, true);
?>
<td><?php print $data2['events'][0]['name']; ?></td>
<td><?php print $data2['events'][0]['average_entry_score']; ?></td>