【发布时间】:2015-07-17 15:14:27
【问题描述】:
我创建了这个工作代码,它将数据从 api 存储到 json 文件 基于昨天的日期。
$filedate = date('Y-m-d',strtotime("-1 days"));
$yesterday = date('Y-m-d 00:00',strtotime("-1 days"));
$today = date('Y-m-d 23:59',strtotime("-1 days"));
try{
$soccer=new XMLSoccer("API KEY");
$soccer->setServiceUrl("http://www.xmlsoccer.com/FootballData.asmx");
/* $result=$soccer->GetLiveScore();*/
$result=$soccer->GetFixturesByDateInterval(array( "startDateString"=> "$yesterday" ,"endDateString"=> "$today"));
var_dump($result);
$fp = fopen( "/var/www/public_html/domain/$filedate.json","w+");
fwrite($fp,json_encode($result));
fclose($fp);
}
catch(XMLSoccerException $e){
echo "XMLSoccerException: ".$e->getMessage();
}
上面的代码将这个json数据存储在文件中:
{
Match: [
{
Id: "346528",
Date: "2015-07-15T12:00:00+00:00",
League: "Chinese Super League",
Round: "19",
HomeTeam: "Guangzhou Evergrande",
HomeTeam_Id: "1108",
HomeGoals: "0",
AwayTeam: "Henan Jianye",
AwayTeam_Id: "1100",
AwayGoals: "0",
Time: "Not started",
Location: "Tianhe Stadium",
HomeTeamYellowCardDetails: { },
AwayTeamYellowCardDetails: { },
HomeTeamRedCardDetails: { },
AwayTeamRedCardDetails: { }
},
{
Id: "346527",
Date: "2015-07-15T11:45:00+00:00",
League: "Chinese Super League",
Round: "19",
HomeTeam: "Shanghai Greenland Shenhua",
HomeTeam_Id: "1107",
HomeGoals: "0",
AwayTeam: "Beijing Guoan",
AwayTeam_Id: "1098",
AwayGoals: "0",
Time: "Not started",
Location: "Hongkou Football Stadium",
HomeTeamYellowCardDetails: { },
AwayTeamYellowCardDetails: { },
HomeTeamRedCardDetails: { },
AwayTeamRedCardDetails: { }
},
}
现在我需要为每场比赛添加一些额外的字段,例如,如果 HomeTeam = Real Madrid ,添加额外的字段 HomeTeamShort = RMD 等。这应该动态完成,因为我必须为每支客队和主队创建 IF。
有人可以帮助我如何做到这一点?
【问题讨论】:
-
你想在哪里添加额外的代码?在json文件中?你能给出 var_dump($result); 的结果吗?在这里?
-
嗨,var_dump ($result);这是一个 xml(api 只返回 xml)然后我用相同的数据在 json 中编码:
(...)353268 2015-07-18T13:30:00+00 :00 Ekstraklasa 1 Ruch Chorzow 437 Gornik Leczna AwayTeam> 1271 0 1