#php #json
#php #json
Вопрос:
Я считываю данные из URL и получаю ответ в формате json ниже:
'"{rn "data": "",rn "error": ".",rn "success": ""rn}"'
Поскольку после использования json_decode ($aboveStr, true); он выводит следующий формат строки:
{"data": "","error": "","success": ""}
Я хочу вывод в виде массива.
Комментарии:
1. Эта строка закодирована дважды, вам нужно ее дважды декодировать.
2. это сработало! спасибо 🙂
3. однако правильнее всего исправить любую программу, кодирующую JSON дважды
Ответ №1:
по какой-то причине ваша входная строка была дважды закодирована в JSON, поэтому вам нужно вызвать json_decode()
дважды:
$array = json_decode(json_decode($aboveStr), true);
Ответ №2:
Вам нужно дважды декодировать вашу строку, используя json_decode
twice. Попробуйте:
print_r(json_decode(json_decode($aboveStr), TRUE));
Он выводит
Array ( [data] => [error] => . [success] => )