Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Как разобрать строку JSON

Короткий ответ

json_decode() со вторым аргументом true возвращает массив:

<?php
 
$user = json_decode('{"name": "Anna", "tags": ["php", "sql"]}', true);
 
echo $user['name'], ' ', count($user['tags']);

Результат:

Anna 2

Некорректный JSON

С флагом JSON_THROW_ON_ERROR ошибка становится исключением:

<?php
 
try {
    json_decode('{broken', true, 512, JSON_THROW_ON_ERROR);
} catch (JsonException $error) {
    echo 'Invalid JSON';
}

Результат:

Invalid JSON

Из файла

Прочитайте файл и разберите его содержимое:

<?php
 
$file = sys_get_temp_dir() . '/recipe-config.json';
file_put_contents($file, '{"theme": "dark", "size": 14}');
 
$config = json_decode(file_get_contents($file), true);
 
echo $config['theme'];

Результат:

dark

Функции из этого ответа

  • json_decode — Разбирает строку JSON.
  • json_encode — Преобразует значение в строку JSON.
  • file_get_contents — Читает файл целиком в строку.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.