Как правильно выполнить итерацию массива?

72
6

У меня есть переменная $content, echo $content показывает следующее:

{
"ID": 181271,
"version_id": 2137,
"theme_id": 2,
"score": null,
"showstopper": 0
}

Очевидно, что echo $content['ID'] должен показать 181271

Поэтому мне нужно перебрать все поля. Я делаю:

 foreach ($content as $key => $value) 
{
echo $key ;
echo $value;
}

И это дает мне безумный результат!

incrementing 1 exists 1 wasRecentlyCreated timestamps 1

Ожидаемый результат:

ID 181271
version_id 2137
etc...

спросил(а) 2017-03-24T06:43:00+03:00 3 года назад
1
Решение
53

Ибо это строка json, а не массив. Вы должны json_decode в массив. Затем вы можете получить к нему доступ.

ответил(а) 2017-03-24T06:48:00+03:00 3 года назад
65

Надеюсь, это сработает, демо-версия PHP-кода

Преобразование строки json в массив с помощью этого $array = json_decode($content, true);

$content = '{"ID":181271,"version_id":2137,"theme_id":2, "score":null,"showstopper":0}';
$array = json_decode($content, true);
foreach ($array as $key => $value)
{
echo $key;
echo $value;
}

ответил(а) 2017-03-24T06:46:00+03:00 3 года назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема