Praca z NEON

NEON to czytelny dla człowieka język do serializacji danych. Jest używany w Nette do plików konfiguracyjnych. Nette\Neon\Neon to statyczna klasa do pracy z NEONem.

Zapoznaj się z formatem NEONwypróbuj go.

Wszystkie przykłady zakładają utworzony alias:

use Nette\Neon\Neon;

Instalacja

Bibliotekę pobierzesz i zainstalujesz za pomocą narzędzia Composer:

composer require nette/neon

Błędy składni w plikach *.neon możesz sprawdzić za pomocą polecenia konsolowego neon-lint:

vendor/bin/neon-lint <ścieżka>

encode (mixed $value, bool $blockMode=false, string $indentation="\t")string

Zwraca $value przekonwertowane na NEON. Jako parametr $blockMode możesz przekazać true, co utworzy wyjście wieloliniowe. Parametr $indentation określa znak używany do wcięcia (domyślnie tabulator).

Neon::encode($value); // Zwraca $value przekonwertowane na NEON
Neon::encode($value, true); // Zwraca $value przekonwertowane na wieloliniowy NEON

Metoda encode() w przypadku błędu rzuca Nette\Neon\Exception.

try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// obsługa wyjątku
}

decode (string $neon): mixed

Konwertuje ciąg znaków z NEON do PHP.

Zwraca skalary, tablice, daty jako obiekty DateTimeImmutable i encje jako obiekty Nette\Neon\Entity.

Neon::decode('hello: world'); // Zwraca tablicę ['hello' => 'world']

Metoda decode() w przypadku błędu rzuca Nette\Neon\Exception.

try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// obsługa wyjątku
}

decodeFile (string $file)mixed

Konwertuje zawartość pliku z NEON do PHP i usuwa ewentualny BOM.

Neon::decodeFile('config.neon');

Metoda decodeFile() w przypadku błędu rzuca Nette\Neon\Exception.

wersja: 3.4