PHP-масив у JSON
Вставте код масиву PHP і отримайте JSON так, як його віддав би json_encode із потрібними прапорцями.
Перетворює код масиву на JSON без запуску PHP
Ви маєте масив у коді PHP, а потрібен його вигляд у JSON: для документації API, фікстури, запиту в Postman. Інструмент розбирає код масиву (короткий синтаксис або array()) і будує JSON з тими самими прапорцями, які є у json_encode: гарний відступ, кирилиця як є, слеші без екранування.
json_encode приймає будь-яке значення і прапорці-бітові маски. Послідовні масиви стають списками, асоціативні — обʼєктами, null, true і false переносяться як є. Прапорці змінюють лише вигляд, не зміст: JSON_PRETTY_PRINT додає відступи, JSON_UNESCAPED_UNICODE лишає кирилицю, JSON_UNESCAPED_SLASHES не екранує /. У помилці json_encode повертає false, тому в новому коді використовуйте JSON_THROW_ON_ERROR.
$data = ['id' => 427, 'title' => 'Вакансія', 'tags' => ['php', 'laravel'], 'url' => 'https://phpukraine.com/jobs/427'];
echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_THROW_ON_ERROR);
// {
// "id": 427,
// "title": "Вакансія",
// "tags": ["php", "laravel"],
// "url": "https://phpukraine.com/jobs/427"
// }
Що питають про цей інструмент
Так робить json_encode за замовчуванням: усе поза ASCII екранується. Прапорець JSON_UNESCAPED_UNICODE лишає літери як є; результат коротший і читається. Для API його майже завжди варто вмикати, JSON від цього не стає менш валідним.
json_encode перетворює послідовний масив із ключами від нуля на JSON-список. Щоб отримати обʼєкт, додайте JSON_FORCE_OBJECT або зробіть ключі рядками. У зворотний бік json_decode($json, true) поверне саме масив.
PHP серіалізує 10.0 як 10.0 з версії 7.1 при serialize_precision = -1, але json_encode напише 10.0 як 10.0 лише з прапорцем JSON_PRESERVE_ZERO_FRACTION. Без нього буде 10, і клієнт на суворій мові отримає int замість float.