Nette Documentation Preview

syntax
NEON Functions
**************

<div class=perex>

NEON is a human-friendly data serialization language. It is used in Nette for configuration files. [api:Nette\Neon\Neon] is a static class for working with NEON.

Learn more about [NEON format|format] or [try it on the sandbox |https://ne-on.org].

</div>

The following examples use these aliases:

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


Installation
------------

Download and install the package using [Composer|/best-practices/composer]:

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

You can check for syntax errors in `*.neon` files using the `neon-lint` console command:

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


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

Returns `$value` converted to NEON. As the parameter `$blockMode` you can pass true, which will create multiline output. The parameter `$indentation` specifies the characters used for indentation (default is tab).

```php
Neon::encode($value); // Returns $value converted to NEON
Neon::encode($value, true); // Returns $value converted to multiline NEON
```

Method `encode()` throws `Nette\Neon\Exception` on error.

```php
try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// Exception handling
}
```


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

Converts given NEON to PHP value.

Returns scalars, arrays, [date|format#dates] as DateTimeImmutable objects, and [entities|format#Entities] as [api:Nette\Neon\Entity] objects.

```php
Neon::decode('hello: world'); // Returns an array ['hello' => 'world']
```

Method `decode()` throws `Nette\Neon\Exception` on error.

```php
try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// Exception handling
}
```


decodeFile(string $file): mixed .[method]{data-version:3.3.1}
-------------------------------------------------------------

Converts the contents of the file from NEON to PHP and removes any BOM.

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

Method `decodeFile()` throws `Nette\Neon\Exception` on error.


{{composer: nette/neon}}
{{leftbar: /utils/@left-menu}}

NEON Functions

NEON is a human-friendly data serialization language. It is used in Nette for configuration files. Nette\Neon\Neon is a static class for working with NEON.

Learn more about NEON format or try it on the sandbox.

The following examples use these aliases:

use Nette\Neon\Neon;

Installation

Download and install the package using Composer:

composer require nette/neon

You can check for syntax errors in *.neon files using the neon-lint console command:

vendor/bin/neon-lint <path>

encode(mixed $value, bool $blockMode = false)string

Returns $value converted to NEON. As the parameter $blockMode you can pass true, which will create multiline output. The parameter $indentation specifies the characters used for indentation (default is tab).

Neon::encode($value); // Returns $value converted to NEON
Neon::encode($value, true); // Returns $value converted to multiline NEON

Method encode() throws Nette\Neon\Exception on error.

try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// Exception handling
}

decode(string $neon): mixed

Converts given NEON to PHP value.

Returns scalars, arrays, date as DateTimeImmutable objects, and entities as Nette\Neon\Entity objects.

Neon::decode('hello: world'); // Returns an array ['hello' => 'world']

Method decode() throws Nette\Neon\Exception on error.

try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// Exception handling
}

decodeFile(string $file)mixed

Converts the contents of the file from NEON to PHP and removes any BOM.

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

Method decodeFile() throws Nette\Neon\Exception on error.