Как пройти каждый элемент в массиве JSON в PHP

1

Я хочу выделить каждый элемент объекта массива JSON следующим образом:

{"request_list":[{"id":"1","name":"yunus","surname":"smsk","phone_number":"05350601922","blood_type":"0","unit_of_blood":"0","date":null},{"id":"3","name":"yunus","surname":"smsk","phone_number":"05350601922","blood_type":"0","unit_of_blood":"0","date":null}]}

Но я не могу этого сделать. Я попробовал что-то:

$object = json_decode($json, true);
$request_list = $object->request_list;
foreach($request_list as $r){
    echo $r->name;
    echo $r->blood_type;
    echo $r->phone_number;
}

Но у меня возникла ошибка:

Недопустимый аргумент для foreach()

  • 1
    Избавьтесь от true как второго аргумента в json_deocde, установив true, и вы преобразуете объекты в массивы.
  • 0
    если второй аргумент равен true, Json будет преобразован в массив php. удалить второй аргумент в json_decode.
Теги:
arrays
echo

3 ответа

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

Поскольку у вас есть метка return as array true в json_decode. Итак, попробуйте под кодом.

 $object = json_decode($json, true);
 $request_list = $object['request_list'];
 foreach($request_list as $r){
    echo $r['name'];
    echo $r['blood_type'];
    echo $r['phone_number'];
}
  • 0
    СПАСИБО МНОГО РАБОТАЕТ ЧЕРТ ХОРОШО BRO sandeepsure
  • 0
    @ YunusSımsıkı Пометить ответ как принятый. Таким образом, другим будет легко адаптировать это.
1

Использовать это

$object = json_decode($json, true);
$request_list = $object['request_list'];
foreach($request_list as $r){
    echo $r['name'];
    echo $r['blood_type'];
    echo $r['phone_number'];
}
0

пытаться

    $json = '{"request_list":[{"id":"1","name":"yunus","surname":"smsk","phone_number":"05350601922","blood_type":"0","unit_of_blood":"0","date":null},{"id":"3","name":"yunus","surname":"smsk","phone_number":"05350601922","blood_type":"0","unit_of_blood":"0","date":null}]}';
    $data = json_decode($json );

    $request = $data->request_list;

    foreach($request as $request_data){
        echo $request_data->id;
        echo $request_data->name;
        echo $request_data->surname;
    }

Ещё вопросы

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