我目前正在使用foursquare API。每次运行以下PHP脚本时,都会在用户配置文件中显示最近的签入并将其写入文本文件。文本文件的每个条目都用逗号分隔。
我的问题是,我可以每分钟运行5次PHP文件,它会获取已经提取的相同签名。我想做的是让下面的PHP脚本读取foursquare JSON中显示的用户的最新签到,如果它已经在此之前的条目中的文本文件中聚合了,它会忽略它而不是添加到文本文件中。
<?php
$charlotte = json_decode(file_get_contents("https://api.foursquare.com/v2/users/5464313?oauth_token=2ZO1PQOUAD5SXRAJOLZVH53RBQ1EB2C23FE2GUZLJYQUJ3SY&v=20121123"));
$venuename = $charlotte->response->user->checkins->items[0]->venue->name;
$file = 'charlotte.txt';
$current = file_get_contents($file);
$current .= $venuename.',';
file_put_contents($file, $current);
?>
<?php
$arran = json_decode(file_get_contents("https://api.foursquare.com/v2/users/1050511?oauth_token=2ZO1PQOUAD5SXRAJOLZVH53RBQ1EB2C23FE2GUZLJYQUJ3SY&v=20121109"));
$venuename = $arran->response->user->checkins->items[0]->venue->name;
$file = 'arran.txt';
$current = file_get_contents($file);
$current .= $venuename.',';
file_put_contents($file, $current);
?>
每个用户的文本文件是什么样的,当PHP脚本运行并输入最新签入的名称时。
Venue Name, Venue Name, Venue Name, Venue Name
非常感谢任何帮助!
答案 0 :(得分:0)
我假设Foursquare会为每次签到返回一个ID。在循环API结果时,您可以检查ID是否与文本文件中的最后一个ID匹配,如果不匹配,则假设它是一个新的签入,并将其写入文件。