Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Travailler avec NEON

NEON est un langage de sérialisation de données lisible par l'homme. Il est utilisé dans Nette pour les fichiers de configuration. Nette\Neon\Neon est une classe statique pour travailler avec NEON.

Familiarisez-vous avec le format NEON et essayez-le.

Tous les exemples supposent la création d'un alias :

use Nette\Neon\Neon;

Installation

Vous pouvez télécharger et installer la bibliothèque à l'aide de Composer :

composer require nette/neon

Vous pouvez vérifier les erreurs de syntaxe dans les fichiers *.neon à l'aide de la commande console neon-lint :

vendor/bin/neon-lint <chemin>

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

Retourne $value convertie en NEON. Comme paramètre $blockMode, vous pouvez passer true, ce qui créera une sortie multiligne. Le paramètre $indentation spécifie les caractères utilisés pour l'indentation (la valeur par défaut est une tabulation).

Neon::encode($value); // Retourne $value convertie en NEON
Neon::encode($value, true); // Retourne $value convertie en NEON multiligne

La méthode encode() lève une Nette\Neon\Exception en cas d'erreur.

try {
	$neon = Neon::encode($value);
} catch (Nette\Neon\Exception $e) {
	// traitement de l'exception
}

decode (string $neon): mixed

Convertit une chaîne NEON en PHP.

Retourne des scalaires, des tableaux, des dates comme objets DateTimeImmutable et des entités comme objets Nette\Neon\Entity.

Neon::decode('hello: world'); // Retourne le tableau ['hello' => 'world']

La méthode decode() lève une Nette\Neon\Exception en cas d'erreur.

try {
	$value = Neon::decode($neon);
} catch (Nette\Neon\Exception $e) {
	// traitement de l'exception
}

decodeFile (string $file)mixed

Convertit le contenu d'un fichier NEON en PHP et supprime un éventuel BOM.

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

La méthode decodeFile() lève une Nette\Neon\Exception en cas d'erreur.

version: 3.4