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]   

> Без описания
ytrewq123
Отправлено: 29 Апреля, 2016 - 01:31:45
Post Id


Посетитель


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


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




Здравствуйте!
Я тут игрался с JSON и тут такое. Не подскажите как добраться до,
[otzyv1] => horoho
или
[1] => idei
как вывести?
Вот что в целом.

{"kniga":"Bulj bulj Karasik","avtor":"Y.Pisun","0":{"otzyv1":"horoho","otzyv2":"ploho"},"1":"idei","2":"zadumki"}


stdClass Object
(
[kniga] => Bulj bulj Karasik
[avtor] => Y.Pisun
[0] => stdClass Object
(
[otzyv1] => horoho
[otzyv2] => ploho
)

[1] => idei
[2] => zadumki
)
 
 Top
caballero
Отправлено: 29 Апреля, 2016 - 12:15:13
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


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




ну так он преобразовал в обэект, какие проблемы
и что именно хотите вывести? Значение по ключу или что?


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
ytrewq123
Отправлено: 29 Апреля, 2016 - 13:18:14
Post Id


Посетитель


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


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




Не ну я всё понимаю.
Просто хочу вывести.

Например тут ясно.

$переменная-> kniga ___ результат будет Bulj bulj Karasik

Но как к подобраться к [otzyv1] => horoho
Ибо так не получается.
$переменная->0->otzyv1
 
 Top
igosja
Отправлено: 29 Апреля, 2016 - 13:19:21
Post Id



Гость


Покинул форум
Сообщений всего: 77
Дата рег-ции: Март 2013  
Откуда: https://vhol.org


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




Проблема в том, что свойства объекта не могут иметь числовые названия.
Сделайте json в виде
{"kniga":"Bulj bulj Karasik","avtor":"Y.Pisun","i0":{"otzyv1":"horoho","otzyv2":"ploho"},"i1":"idei","i2":"zadumki"}
PHP:
скопировать код в буфер обмена
  1. echo $json->i0->otzyv1; //Выведет horoho
  2. echo $json->i1; //Выведет idei

Вместо $json вставьте свою переменную с данными из json

(Отредактировано автором: 29 Апреля, 2016 - 13:31:28)

 
 Top
ytrewq123
Отправлено: 29 Апреля, 2016 - 18:02:22
Post Id


Посетитель


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


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




То есть по сути ни как.


Вот что я засовывал а JSON
$json = array(

'kniga' => 'Bulj bulj Karasik',
'avtor'=>'Y.Pisun',
[
'otzyv1'=>'horoho',
'otzyv2'=>'ploho'
],
'idei','zadumki'
);



Так то работает
$json = array(

'kniga' => 'Bulj bulj Karasik',
'avtor'=>'Y.Pisun',
otzyv=>[
'horoho',
'ploho'
],
'idei','zadumki'
);

Просто думал если где то такое будет, как это понять и решить.
Хорошо.
Спасибо.
 
 Top
igosja
Отправлено: 29 Апреля, 2016 - 18:17:39
Post Id



Гость


Покинул форум
Сообщений всего: 77
Дата рег-ции: Март 2013  
Откуда: https://vhol.org


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




Тогда нужно json преобразовывать в массив, а не в объект.
PHP:
скопировать код в буфер обмена
  1. $json = '{"kniga":"Bulj bulj Karasik","avtor":"Y.Pisun","0":{"otzyv1":"horoho","otzyv2":"ploho"},"1":"idei","2":"zadumki"}';
  2. $json = json_decode($json, true);
  3.  
  4. print $json[0]['otzyv1'];//выведет horoho

(Отредактировано автором: 29 Апреля, 2016 - 18:41:08)

 
 Top
ytrewq123
Отправлено: 29 Апреля, 2016 - 19:49:30
Post Id


Посетитель


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


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




Это да. Просто экспериментировал и получилось такое. Вот и думал как.
Там вроде ещё констант куча. Но такого варианта нет.
Cпасибо, учтём, будем знать и иметь в виду.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB