Распарсить JSON и получить значение на PHP

263
23 января 2018, 13:10

Знаю, что нужно подучить получение массивов на PHP но время поджимает.
Подскажите пожалуйста, есть такой JSON, хочу получить значение price по id например: 240439

Пример JSON:

[
 { "240438":[{"price":"100.00","name":"blabla1","loc":"center"}] },
 { "240439":[{"price":"100.00","name":"blabla2","loc":"center2"}] }
]

После декодинга:

 $PHP_arr= json_decode( $JSON_arr,true );

Пробую так получить значение:

echo $PHP_arr[240439][0]->price;
echo $PHP_arr[240439][0]->{'price'};
echo $PHP_arr[240439][0]['price']; //:))
введите сюда код

Где я туплю? Как получить price значение зная id?

Answer 1

У вас по структуре JSON есть массив объектов такого плана:

{ "240438":[{"price":"100.00","name":"blabla1","loc":"center"}] }

Соответственно получить информацию сразу по id не получится. Нужно сначала найти, где этот id находится. Например, для id, равного 240439, цену можно получить так:

echo $PHP_arr[1]['240439'][0]['price'];

Соответственно, если известен только id, нужно выполнить поиск по массиву. Например, так:

$id = '240439';
foreach($PHP_arr as $value){
    if(array_key_exists($id, $value)){
        $price = $value[$id][0]['price'];
        break;
    }
}
echo $price;
READ ALSO
Не работает валидация формы

Не работает валидация формы

Есть такой код для обновления пароля:

185
Как принять обмен steam php?

Как принять обмен steam php?

здравствуйте у меня есть такой код

188
Как добавить возможность вывода цены в поисковый запрос к2store?

Как добавить возможность вывода цены в поисковый запрос к2store?

Добрый вечерПеределываю под себя шаблон на k2store В интернет магазине сделанном на k2store Установил модуль JA K2 Filter and Search Нашел файл отвечающий...

419
Парсинг видео с сайтов [требует правки]

Парсинг видео с сайтов [требует правки]

Хотел бы спросить, может кто то имеет ссылки на библиотеки парсинга видеоМне нужно по данной ссылке взять видео и ее превью, Пример: https://bezumkin

238