PHP JSON Разбор объектов

1

Я пытаюсь разобрать объект JSON в PHP. Мои усилия привели к завершению этого var_dump:

string(5) "Malta"
string(2) "mt"
string(11) "St Julian's"
string(5) "Malta"
string(2) "mt"
string(11) "St Julian's"

Теперь я хочу только напечатать "Мальту". Все попытки попробовать потерпели неудачу, и мне нужен намек на то, что делать дальше. Любые идеи о том, как я могу это сделать? благодаря

Пытаемся разобрать эту часть: "location":

{
"totalFound":2,
"content":[
{
"id":"a1d17bwqeqewqeqweaf-1e54-4861-92e1-8246baba11d6",
"title":"Developer",
"refNumber":"REFqweqwe4N",
"createdOn":"2015-08-28T11:10:07.000Z",
"updatedOn":"2015-08-28T13:19:59.000Z",
"location":{
"country":"Malta",
"countryCode":"mt",
"city":"St Julian's"
},
"status":"SOURCING",
"actions":{
"details":{
"url":"www.google.com",
"method":"GET"
}
}
}
],
"offset":0,
"limit":10
}

Мой фрагмент кода:

$jfo = json_decode($data, TRUE);

foreach ($jfo['content'] as $category) {
if (isset($category['title']) != null) {
}
if (isset($category['location']) != null) {



    foreach ($category['location'] as $location){
        var_dump($location);
        print_r($location);
  • 0
    Могу ли я получить print_r этого объекта?
  • 0
    Похоже, что var_dump находится внутри цикла, а не декодированного объекта?
Показать ещё 6 комментариев
Теги:

2 ответа

1
Лучший ответ

попробуйте echo $category['location']['country'] удалите для каждого из них его привязку, чтобы закодировать ваш массив местоположений

  • 0
    попробовал, не сработало - печатается только первый символ
  • 0
    @progdoc проверить сейчас
1

Проблема в том, что вы повторяете каждый элемент в location, то есть country, countryCode и city.

Это делает то, что вам нужно:

$jfo = json_decode($data, TRUE);

foreach ($jfo['content'] as $content)
{
  echo $content['location']['country'];
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню