Як правильно записати та прочитати JSON на PHP8
При записі JSON на PHP8 виникає як правило дві проблеми: - кириличний текст записується крякозябрами ( \u0418 ), і все записується в одну строку.
Як вирішити ці проблеми читайте нижче.
Приклад з поясненям:
$aside = [
'id' => '1',
'titl' => 'Заголовок сторінки',
'desk' => 'Повний опис сторнки',
'keyw' => 'Ключові слова',
'short' => '<p>Від Донецька до Кремля –<br>українська це земля.<br>Наш князь "Юрій Долгорукий"<br>підкорив болота, луки<br>Він Москву вам заснував,<br>щоб нечистий вас забрав!<br>Ще в Москві хор жаб співав,<br>Київ наш вже процвітав.</p>',
'author' => [
'first_name' => 'Михась',
'last_name' => 'Сковорода'
]
];
$filename = 'asidet.txt'; // Файл у який записуємо
// Запись.
//$myfile = serialize($aside); // Якщо хочемо зберегти у PHP форматі
$myfile = json_encode($aside, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT); // JSON формат
file_put_contents($filename, $myfile);
//флаг: JSON_UNESCAPED_UNICODE - неперекодовує кирилицю
//флаг: JSON_PRETTY_PRINT - кожне значення масиву записує з нового рядка