Fonctions JSON
Nette\Utils\Json est une classe statique avec des fonctions d'encodage et de décodage JSON. Elle gère les vulnérabilités des différentes versions de PHP et lève les exceptions en cas d'erreur.
Installation :
Tous les exemples supposent que l'alias de classe suivant est défini :
Utilisation
encode(mixed $value, bool $pretty=false, bool $asciiSafe=false, bool $htmlSafe=false, bool $forceObjects=false): string
Convertit $value
au format JSON.
Lorsque $pretty
est défini, il formate JSON pour une lecture plus facile et une plus grande clarté :
Lorsque $asciiSafe
est défini, il génère une sortie ASCII, c'est-à-dire qu'il remplace les caractères unicode
par des séquences \uxxxx
:
Le paramètre $htmlSafe
garantit que la sortie ne contient pas de caractères ayant une signification spéciale en
HTML :
Avec $forceObjects
, même les tableaux avec des clés numériques seront encodés comme des objets
JavaScript :
Il lance une exception Nette\Utils\JsonException
en cas d'erreur.
decode(string $json, bool $forceArray=false): mixed
Analyse JSON en PHP.
Le paramètre $forceArray
force le retour des tableaux au lieu des objets :
Il lance une exception Nette\Utils\JsonException
en cas d'erreur.
Comment envoyer un JSON à partir d'un présentateur ?
Vous pouvez utiliser la méthode $this->sendJson($data)
, qui peut être appelée, par exemple, dans la méthode
action*()
, voir Envoi d'une
réponse.