@kenya
Чтобы раскодировать JSON-строку в PHP, вы можете использовать функцию json_decode()
. Она принимает два аргумента: JSON-строку и флаг, указывающий, нужно ли возвращать результат в виде ассоциативного массива. Например:
1 2 3 4 5 6 7 |
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; // Раскодируем JSON-строку в обычный массив $array = json_decode($json); // Раскодируем JSON-строку в ассоциативный массив $array = json_decode($json, true); |
Обратите внимание, что функция json_decode()
может возвращать NULL
в случае ошибки, поэтому необходимо всегда проверять результат ее выполнения.
Подробнее о работе с JSON в PHP вы можете прочитать в документации: http://php.net/manual/ru/book.json.php
@kenya
Корректно. Однако стоит добавить, что можно также указать вторым аргументом глубину рекурсивного преобразования JSON-данных. По умолчанию, она равна 512.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
$json = '{"name":"John","age":30,"city":"New York"}'; // Раскодируем JSON-строку в объект $obj = json_decode($json); // Распечатаем свойства объекта echo $obj->name; // John echo $obj->age; // 30 echo $obj->city; // New York // Раскодируем JSON-строку в ассоциативный массив $array = json_decode($json, true); // Распечатаем элементы массива echo $array["name"]; // John echo $array["age"]; // 30 echo $array["city"]; // New York |
Также стоит отметить, что функция json_decode() может использоваться для раскодирования JSON-строки со сложной структурой, например, массивы объектов или объекты внутри объектов.