2016-01-13 3 views
-1

Новое в php и пытается выяснить, как анализировать данные API, которые возвращаются в виде странного формата. Вот пример данных:Parse JSON с PHP - нерегулярный формат

[{"campaign_id":"9000","date":"2016-01-11","totalcount":"1838","page":"1","totalpages":1,"index":1,"count":1838},{"video2.stack.com":["84254","105","0","83.71"],...,"zierfischforum.at":["1","0","0","0.00"]}] 
+3

Вы пробовали что-нибудь, прежде чем спрашивать? Пожалуйста, google. Это не странный формат. Это JSON. – Kenneth

+2

'json_decode()' – wogsland

+0

Что именно нерегулярно? Ваше название включает 'parse',' JSON' и 'php', поэтому я предполагаю, что вы пробовали' json_decode' и имели проблемы - что именно эти проблемы? – Steve

ответ

1

Вот example, как вы можете разобрать ваш JSON как массив:

$json_string = '[{"campaign_id":"9000","date":"2016-01-11","totalcount":"1838","page":"1","totalpages":1,"index":1,"count":1838},{"video2.stack.com":["84254","105","0","83.71"],"zierfischforum.at":["1","0","0","0.00"]}]'; 

$json_array = json_decode($json_string, true); // true gets us an array 

echo '<pre>'; 
print_r($json_array); 

echo $json_array[1]['video2.stack.com'][0]; 

дает следующие результаты:

Array 
(
    [0] => Array 
     (
      [campaign_id] => 9000 
      [date] => 2016-01-11 
      [totalcount] => 1838 
      [page] => 1 
      [totalpages] => 1 
      [index] => 1 
      [count] => 1838 
     ) 

    [1] => Array 
     (
      [video2.stack.com] => Array 
       (
        [0] => 84254 
        [1] => 105 
        [2] => 0 
        [3] => 83.71 
       ) 

      [zierfischforum.at] => Array 
       (
        [0] => 1 
        [1] => 0 
        [2] => 0 
        [3] => 0.00 
       ) 

     ) 

) 
84254 

Первый мы выводим весь массив. Основываясь на данных, мы можем выделить значение для одной из массивов для video2.stack.com. Относительно легко пройти, и вы сможете извлечь любую необходимую информацию. Вы даже можете создать функцию рекурсивного поиска для вашего JSON.


ПРИМЕЧАНИЕ: Я удалил некоторые данные (часть ,...), как это сделал ваш JSON недопустимого.