Nette Documentation Preview

syntax
NEON pro PHP
************

<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://fiddle.nette.org/neon/].

</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 [--debug] <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 $input): 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`.


Pokud aktualizujete balíček na novější verzi, podívejte se na stránku [upgrade|upgrading].

{{maintitle: Nette NEON: čtení a zápis souborů NEON v PHP}}
{{description: NEON je lidsky srozumitelný jazyk pro serializaci dat, který Nette používá v konfiguračních souborech. Statická třída Neon ho v PHP kóduje a dekóduje.}}

NEON pro PHP

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 [--debug] <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 $input): 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.

Pokud aktualizujete balíček na novější verzi, podívejte se na stránku upgrade.