I'm trying to store the titles in an array and extract the long cmcontinue string from the below url.
my current code:
$url = 'http://en.wikipedia.org/w/api.php?
action=query&list=categorymembers&cmtitle=Category:'.$cat.'&format=json';
$ch = curl_init($url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_USERAGENT, "asdf");
$c = curl_exec($ch);
$json = json_decode($c);
$array = $json->{'query'}->{'categorymembers'}->{'title'};
mu is too short
436k71 gold badges863 silver badges822 bronze badges
asked Nov 25, 2012 at 5:36
arrogantprick
1631 gold badge2 silver badges11 bronze badges
-
What's the problem you're having? oh wait. You asked the question in perfect tune with your nickname :)0x6A75616E– 0x6A75616E2012年11月25日 06:02:09 +00:00Commented Nov 25, 2012 at 6:02
1 Answer 1
try adding second paremeter of json_decode, like:
$json = json_decode($c, true);
And get cmcontinue value as:
echo $json["query-continue"]["categorymembers"]["cmcontinue"];
For titles:
$titles = array();
foreach($json["query"]["categorymembers"] as $vals) {
array_push($titles, $vals["title"]);
}
echo "<pre>"; print_r($titles);
answered Nov 25, 2012 at 6:00
Sudhir Bastakoti
100k15 gold badges163 silver badges169 bronze badges
Sign up to request clarification or add additional context in comments.
Comments
lang-php