我正在尝试使用以下URL解析维基百科类别:
http://en.wikipedia.org/w/api.php?action=query&format=json&cllimit=max&prop=categories&titles=Albert%20Einstein
...where上的“阿尔伯特·爱因斯坦”是任何维基百科的页面
我遇到的问题是,如果不对pageid进行硬编码,我不确定如何解析,pageid是可变的(在本例中是"736“--它只适用于这个页面)。
注意:我今天才开始学习JSON,所以这可能很简单。
$page = $_GET['page'];
$page = str_replace('_',' ',$page);
$url = 'http://en.wikipedia.org/w/api.php?
action=query&format=json&cllimit=max&prop=categories&titles='.$page;
echo $url;
$ch = curl_init($url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_USERAGENT, "TestScript");
$c = curl_exec($ch);
$json = json_decode($c);
$content = $json->{'query'}->{'pages'}->{'736'}->{'categories'};
print_r ($content);发布于 2012-11-21 03:15:01
人们可能会认为,至少在理论上,可能会有多个页面,所以为什么不:
foreach ($json->{'query'}->{'pages'} as $page) {
print_r ($page->{'categories'});
}https://stackoverflow.com/questions/13465126
复制相似问题