Nette Documentation Preview

syntax
Práce s NEON
************

<div class=perex>

NEON je lidsky srozumitelný jazyk pro serializaci dat. Používá se v Nette pro konfigurační soubory. [api:Nette\Neon\Neon] je statická třída pro práci s NEONem.

Seznamte se s [formátem NEON|format] a [vyzkoušejte si jej |https://ne-on.org].

</div>

Všechny příklady předpokládají vytvořený alias:

```php
use Nette\Neon\Neon;
```


Instalace
---------

Knihovnu stáhnete a nainstalujete pomocí nástroje [Composer|best-practices:composer]:

```shell
composer require nette/neon
```

Chyby v syntaxi v souborech `*.neon` můžete zkontrolovat pomocí konzolového příkazu `neon-lint`:

```shell
vendor/bin/neon-lint <cesta>
```


encode(mixed $value, bool $blockMode=false, string $indentation="\t"): string .[method]
---------------------------------------------------------------------------------------

Vrací `$value` převedenou na NEON. Jako parametr `$blockMode` můžete předat true, čímž se vytvoří víceřádkový výstup. Parametr `$indentation` určuje znaky použité pro odsazení (výchozí je tabulátor).

```php
Neon::encode($value); // Vrátí $value převedenou do NEONu
Neon::encode($value, true); // Vrátí $value převedenou do víceřádkového NEONu
```

Metoda `encode()` při chybě vyhodí `Nette\Neon\Exception`.

```php
try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// zpracování výjimky
}
```


decode(string $neon): mixed .[method]
-------------------------------------

Převede řetězec z NEONu do PHP.

Vrací skaláry, pole, [data|format#datum] jako objekty DateTimeImmutable a [entity|format#entity] jako objekty [api:Nette\Neon\Entity].

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

Metoda `decode()` při chybě vyhodí `Nette\Neon\Exception`.

```php
try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// zpracování výjimky
}
```


decodeFile(string $file): mixed .[method]
-----------------------------------------

Převede obsah souboru z NEONu do PHP a odstraní případný BOM.

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

Metoda `decodeFile()` při chybě vyhodí `Nette\Neon\Exception`.


{{leftbar: utils:@left-menu}}

Práce s NEON

NEON je lidsky srozumitelný jazyk pro serializaci dat. Používá se v Nette pro konfigurační soubory. Nette\Neon\Neon je statická třída pro práci s NEONem.

Seznamte se s formátem NEON a vyzkoušejte si jej.

Všechny příklady předpokládají vytvořený alias:

use Nette\Neon\Neon;

Instalace

Knihovnu stáhnete a nainstalujete pomocí nástroje Composer:

composer require nette/neon

Chyby v syntaxi v souborech *.neon můžete zkontrolovat pomocí konzolového příkazu neon-lint:

vendor/bin/neon-lint <cesta>

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

Vrací $value převedenou na NEON. Jako parametr $blockMode můžete předat true, čímž se vytvoří víceřádkový výstup. Parametr $indentation určuje znaky použité pro odsazení (výchozí je tabulátor).

Neon::encode($value); // Vrátí $value převedenou do NEONu
Neon::encode($value, true); // Vrátí $value převedenou do víceřádkového NEONu

Metoda encode() při chybě vyhodí Nette\Neon\Exception.

try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// zpracování výjimky
}

decode(string $neon): mixed

Převede řetězec z NEONu do PHP.

Vrací skaláry, pole, data jako objekty DateTimeImmutable a entity jako objekty Nette\Neon\Entity.

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

Metoda decode() při chybě vyhodí Nette\Neon\Exception.

try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// zpracování výjimky
}

decodeFile(string $file)mixed

Převede obsah souboru z NEONu do PHP a odstraní případný BOM.

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

Metoda decodeFile() při chybě vyhodí Nette\Neon\Exception.