JSON

Вывести массив или объект в формате JSON можно через функцию json_encode().

$array = [
    'lang' => 'PHP',
    'version' => '7.4.3'
];

json_encode($array); // {"lang":"PHP","version":"7.4.3"}

Данные в формате JSON можно хранить, например, в файлах или в базе данных.

Преобразовать JSON в объект можно через функцию json_decode().

$json = json_decode('{"lang":"PHP","version":"7.4.3"}');

$json->lang;    // PHP
$json->version; // 7.4.3

Вывести страницу как JSON

Если на странице выводится только JSON, то рекомендуется указывать заголовок «application/json». Данный заголовок позволит браузерам и приложениям обрабатывать текст как JSON.

// Вывести текущую страницу как JSON
header('Content-Type: application/json');

$array = [
    'lang' => 'PHP',
    'framework' => [
        'name' => 'Yii',
        'version' => 2
    ]
];

echo json_encode($array);

В браузере Firefox страница в формате JSON будет показываться как на картинке ниже:

JSON в Firefox

Если бы не был задан заголовок «application/json», то Firefox вывел бы просто текст.

Также когда в JavaScript идёт запрос на страницу в формате JSON, то JavaScript уже получит данные в формате JSON (т.е. преобразовывать строку в JSON не нужно).