Praca z NEON

NEON jest czytelnym dla człowieka językiem serializacji danych. Jest on używany w Nette do plików konfiguracyjnych. Nette\Neon\Neon jest statyczną klasą do pracy z NEONem.

Poznaj format NEONwypróbuj go.

Wszystkie przykłady zakładają utworzony alias:

use Nette\Neon\Neon;

Instalacja

Pobierz i zainstaluj bibliotekę za pomocą Composera:

composer require nette/neon

Możesz sprawdzić błędy składni w plikach *.neon używając polecenia konsoli neon-lint:

vendor/bin/neon-lint <cesta>

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

Zwraca $value przekonwertowany na NEON. Możesz przekazać true jako parametr $blockMode, aby utworzyć wyjście wieloliniowe. Parametr $indentation określa znaki używane do wcięć (domyślnie jest to tabulator).

Neon::encode($value); // Zwraca $value przekonwertowaną na NEON
Neon::encode($value, true); // Zwraca $value przekonwertowaną na wielowierszowy NEON

Metoda encode() rzuca Nette\Neon\Exception na błąd.

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

decode(string $neon): mixed

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

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

Neon::decode('hello: world'); // Vrátí pole ['hello' => 'world']

Metoda decode() rzuca Nette\Neon\Exception na błąd.

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

decodeFile(string $file)mixed

Konwertuje zawartość pliku z NEON na PHP i usuwa wszelkie BOM.

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

Metoda decodeFile() rzuca Nette\Neon\Exception na błąd.

wersja: 3.4