2016-04-10 2 views
0

ПроблемаFetch данные в формате JSON, Wikimedia

У меня есть этот контент в формате JSON, который я получил от Wikimedia API в формате JSON. Я хочу извлечь данные под [*] это. Хотя я не знаю до вызова идентификатора страницы, поэтому я не могу использовать pageid в середине. Также не могу пройти астмы (*). Я использовал следующий код для получения данных, но получаю ошибку.

Я по-настоящему признателен за любую помощь или руководство.

Код

$api_data->query->pages->revisions[0]->['*']; 

JSON

stdClass Object 
(
    [batchcomplete] => 
    [query] => stdClass Object 
     (
      [pages] => stdClass Object 
       (
        [27000] => stdClass Object 
         (
          [pageid] => 27000 
          [ns] => 0 
          [title] => Patna 
          [revisions] => Array 
           (
            [0] => stdClass Object 
             (
              [contentformat] => text/x-wiki 
              [contentmodel] => wikitext 
              [*] => ==Understand== 
The ancient name of Patna was 'Pataliputra' and it was the capital of the Maurya and Gupta empires. Located at the site where Patna is today, the ancient city of Patliputra, with a glorious period of history spanning a thousand years (500BC-400AD), saw the rise and fall of India's first major kingdoms. 

Lying along the banks of the Ganges River, Patna is surrounded by important religious centers for the Buddhists, Sikhs and Jains. This city has been home to two great religions, Buddhism and Jainism, and myriad dynasties from ancient to modern times. 
             ) 

           ) 

         ) 

       ) 

     ) 

) 
+2

'$ api_data-> query-> pages-> revisions [0] -> {'*'}; ' – Chay22

+0

спасибо, что помогли !! – colourtheweb

ответ

0

Вы можете использовать имя свойства в скобках, как предложено Chay22:

$data->first = 'hello'; 
$data->{'*'} = 'world'; 

var_dump($data); 

// Like this 
echo $data->{'*'}; 
echo PHP_EOL; 

// or like this 
$varname = '*'; 

echo $data->{$varname}; 
echo PHP_EOL;