Робота з NEON
NEON — це зрозуміла для людини мова серіалізації даних. Вона використовується в Nette для конфігураційних файлів. Nette\Neon\Neon — це статичний клас для роботи з NEON.
Ознайомтеся з форматом NEON та спробуйте його.
Усі приклади передбачають створений псевдонім:
use Nette\Neon\Neon;
Встановлення
Завантажте та встановіть бібліотеку за допомогою Composer:
composer require nette/neon
Помилки синтаксису у файлах *.neon
можна перевірити за допомогою
консольної команди neon-lint
:
vendor/bin/neon-lint <шлях>
encode (mixed $value, bool $blockMode=false,
string $indentation="\t"
): string
Повертає $value
, перетворене на NEON. Як параметр $blockMode
можна передати true, що створить багаторядковий вивід. Параметр
$indentation
визначає символи, що використовуються для відступу (за
замовчуванням — табуляція).
Neon::encode($value); // Повертає $value, перетворене на NEON
Neon::encode($value, true); // Повертає $value, перетворене на багаторядковий NEON
Метод encode()
при помилці викидає Nette\Neon\Exception
.
try {
$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
// обробка винятку
}
decode (string $neon): mixed
Перетворює рядок з NEON на PHP.
Повертає скаляри, масиви, дані як об'єкти DateTimeImmutable та сутності як об'єкти Nette\Neon\Entity.
Neon::decode('hello: world'); // Повертає масив ['hello' => 'world']
Метод decode()
при помилці викидає Nette\Neon\Exception
.
try {
$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
// обробка винятку
}
decodeFile (string $file): mixed
Перетворює вміст файлу з NEON на PHP та видаляє можливий BOM.
Neon::decodeFile('config.neon');
Метод decodeFile()
при помилці викидає Nette\Neon\Exception
.