我正在尝试使用以下网址解析维基百科类别:
...其中“albert einstein”是任何维基百科页面
我遇到的问题是,我不确定如何解析没有对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);
答案 0 :(得分:1)
人们会认为至少在理论上可以有多个页面,所以为什么不呢:
foreach ($json->{'query'}->{'pages'} as $page) {
print_r ($page->{'categories'});
}