Android — Parse Json Переполнение стека объектов

Я хочу разобрать следующий Json-Object:

{"multicast_id":123456,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}

Я был в состоянии успешно разобрать значения из успеха, сбоя и т. Д., Но у меня возникают трудности при получении «error» -msg («InvalidRegistration»).
Я получаю к ним доступ так:

        $b = json_decode($a, true);
if($b['success'] == 1){
$result = true;
}

Как я могу получить доступ к разделу результатов / ошибок?

Я пытался сделать это так:

$b['results']['error']

но это не сработало.

Заранее спасибо за помощь.

1

Решение

После использования json_decode будет создан массив php, имеющий следующую структуру:

Array
(
[multicast_id] => 123456
[success] => 0
[failure] => 1
[canonical_ids] => 0
[results] => Array
(
[0] => Array
(
[error] => InvalidRegistration
)

)

)

Это означает, что для доступа к error ключ внутри results массив нужно набрать $b['results'][0]['error'], Конечно, это не оптимальный способ, если вы не знаете, что всегда будет один индекс в results массив. В случае, когда существовало неизвестное количество индексов ([0], [1], [2][n]), было бы лучше создать цикл и просмотреть каждый из них.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]