Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не могу разобрать ответ в виде JSON

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Coder1994
Отправлено: 24 Декабря, 2011 - 03:50:31
Post Id


Частый гость


Покинул форум
Сообщений всего: 213
Дата рег-ции: Май 2010  
Откуда: Россия, Ростов-на-Дону


Помог: 3 раз(а)




Здравствуйте! Не получается разобрать ответ сервера в виде JSON, не могли бы вы помочь?
Вот ответ от сервера:
CODE (htmlphp):
скопировать код в буфер обмена
  1. {"worldLeaderboards": [{ "baseCarHash": 1502747725, "baseCarName": "911GT3RS", "carName": "911 GT3 RS", "carNameKey": "", "createdDate": { "date": 16, "day": 5, "hours": 15, "minutes": 14, "month": 11, "seconds": 37, "time": 1324048477000, "timezoneOffset": 0, "year": 111 }, "createdDateStr": "2011/12/16", "eventDuration": "0:01:41.689", "eventDurationMilliseconds": 101689, "eventId": 71, "eventMode": 1, "eventType": 2, "make": "PORSCHE", "nucleusId": 2396752585, "nucleusPersonaId": 331511612, "persona": { "defaultPersona": true, "image": "0", "level": 50, "localPersonaId": 0, "personaId": 5066554, "personaName": "CODER1990", "statusMessage": "" }, "personaName": "NICKNAME", "rank": 1, "recordId": 282332893, "recordStatus": 1, "worldPersonaId": 5045554, "worldUserId": 6431170}]}

Пытаюсь разобрать вот так:
PHP:
скопировать код в буфер обмена
  1. $obj=json_decode($page_text, true);
  2. echo $obj['carName'][0];

Но вывод не происходит, почему?
 
 Top
DlTA
Отправлено: 24 Декабря, 2011 - 04:00:31
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




var_dump($obj);
и смотрите внимательно, какая на самом деле структура полученных данных, то как вы пытаетесь обратиться ошибка, нет по такому индексу на данном уровне данных
 
 Top
Coder1994
Отправлено: 26 Декабря, 2011 - 23:56:44
Post Id


Частый гость


Покинул форум
Сообщений всего: 213
Дата рег-ции: Май 2010  
Откуда: Россия, Ростов-на-Дону


Помог: 3 раз(а)




DlTA пишет:
var_dump($obj);
и смотрите внимательно, какая на самом деле структура полученных данных, то как вы пытаетесь обратиться ошибка, нет по такому индексу на данном уровне данных

Вот дамп:
CODE (htmlphp):
скопировать код в буфер обмена
  1. array(1) {
  2.   ["worldLeaderboards"]=>
  3.   array(1) {
  4.     [0]=>
  5.     array(21) {
  6.       ["baseCarHash"]=>
  7.       int(1502747725)
  8.       ["baseCarName"]=>
  9.       string(8) "911GT3RS"
  10.       ["carName"]=>
  11.       string(10) "911 GT3 RS"
  12.       ["carNameKey"]=>
  13.       string(0) ""
  14.       ["createdDate"]=>
  15.       array(9) {
  16.         ["date"]=>
  17.         int(16)
  18.         ["day"]=>
  19.         int(5)
  20.         ["hours"]=>
  21.         int(15)
  22.         ["minutes"]=>
  23.         int(14)
  24.         ["month"]=>
  25.         int(11)
  26.         ["seconds"]=>
  27.         int(37)
  28.         ["time"]=>
  29.         int(1324048477000)
  30.         ["timezoneOffset"]=>
  31.         int(0)
  32.         ["year"]=>
  33.         int(111)
  34.       }
  35.       ["createdDateStr"]=>
  36.       string(10) "2011/12/16"
  37.       ["eventDuration"]=>
  38.       string(11) "0:01:41.689"
  39.       ["eventDurationMilliseconds"]=>
  40.       int(101689)
  41.       ["eventId"]=>
  42.       int(71)
  43.       ["eventMode"]=>
  44.       int(1)
  45.       ["eventType"]=>
  46.       int(2)
  47.       ["make"]=>
  48.       string(7) "PORSCHE"
  49.       ["nucleusId"]=>
  50.       int(2396752585)
  51.       ["nucleusPersonaId"]=>
  52.       int(331511612)
  53.       ["persona"]=>
  54.       array(7) {
  55.         ["defaultPersona"]=>
  56.         bool(true)
  57.         ["image"]=>
  58.         string(1) "0"
  59.         ["level"]=>
  60.         int(50)
  61.         ["localPersonaId"]=>
  62.         int(0)
  63.         ["personaId"]=>
  64.         int(5060554)
  65.         ["personaName"]=>
  66.         string(9) "CODER1990"
  67.         ["statusMessage"]=>
  68.         string(0) ""
  69.       }
  70.       ["personaName"]=>
  71.       string(9) "CODER1990"
  72.       ["rank"]=>
  73.       int(1)
  74.       ["recordId"]=>
  75.       int(286932893)
  76.       ["recordStatus"]=>
  77.       int(1)
  78.       ["worldPersonaId"]=>
  79.       int(5060554)
  80.       ["worldUserId"]=>
  81.       int(6431150)
  82.     }
  83.   }
  84. }

Пытаюсь вывести один из элементов:
PHP:
скопировать код в буфер обмена
  1. echo $obj[1][1][0]["baseCarHash"];

Ничего не происходит. Хотя по структуре видно, что вывод должен произойти.
В чём проблема?
 
 Top
ams
Отправлено: 27 Декабря, 2011 - 00:29:09
Post Id



Посетитель


Покинул форум
Сообщений всего: 351
Дата рег-ции: Нояб. 2010  


Помог: 13 раз(а)




PHP:
скопировать код в буфер обмена
  1. echo $obj["worldLeaderboards"][0]["baseCarHash"];
 
 Top
Coder1994
Отправлено: 27 Декабря, 2011 - 01:04:51
Post Id


Частый гость


Покинул форум
Сообщений всего: 213
Дата рег-ции: Май 2010  
Откуда: Россия, Ростов-на-Дону


Помог: 3 раз(а)




ams пишет:
PHP:
скопировать код в буфер обмена
  1. echo $obj["worldLeaderboards"][0]["baseCarHash"];

Спасибо большое! Помогло)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB