NEONの操作

NEONは、人間が理解しやすいデータシリアライズ言語です。Netteでは設定ファイルに使用されます。Nette\Neon\Neonは、NEONを操作するための静的クラスです。

NEON 形式について学び、試してみてください

すべての例は、エイリアスが作成されていることを前提としています:

use Nette\Neon\Neon;

インストール

ライブラリはComposerツールを使用してダウンロードおよびインストールします:

composer require nette/neon

*.neonファイルの構文エラーは、コンソールコマンドneon-lintを使用して確認できます:

vendor/bin/neon-lint <path>

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

$valueをNEONに変換して返します。パラメータ$blockModeにtrueを渡すと、複数行の出力が作成されます。パラメータ$indentationは、インデントに使用される文字を指定します(デフォルトはタブ)。

Neon::encode($value); // $value を NEON に変換して返します
Neon::encode($value, true); // $value を複数行の NEON に変換して返します

encode()メソッドは、エラー時にNette\Neon\Exceptionをスローします。

try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// 例外処理
}

decode (string $neon): mixed

NEON形式の文字列をPHPに変換します。

スカラー、配列、日付をDateTimeImmutableオブジェクトとして、エンティティNette\Neon\Entityオブジェクトとして返します。

Neon::decode('hello: world'); // 配列 ['hello' => 'world'] を返します

decode()メソッドは、エラー時にNette\Neon\Exceptionをスローします。

try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// 例外処理
}

decodeFile (string $file)mixed

ファイルの内容をNEONからPHPに変換し、BOMがあれば削除します。

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

decodeFile()メソッドは、エラー時にNette\Neon\Exceptionをスローします。

バージョン: 3.4