Maison >développement back-end >tutoriel php >Comment décoder JSON dans Twig ?

Comment décoder JSON dans Twig ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-11 10:54:02926parcourir

How to Decode JSON in Twig?

Décodage JSON dans Twig

Le décodage JSON dans Twig est possible à l'aide d'extensions Twig personnalisées. Voici comment procéder :

Étape 1 : Créez la classe d'extension

namespace Acme\DemoBundle\Twig\Extension;

use Symfony\Component\DependencyInjection\ContainerInterface;  
use \Twig_Extension;

class VarsExtension extends Twig_Extension
{
    protected $container;
 
    public function __construct(ContainerInterface $container) 
    {
        $this->container = $container;
    }
      
    public function getName() 
    {
        return 'some.extension';
    }
    
    public function getFilters() {
        return array(
            'json_decode'   => new \Twig_Filter_Method($this, 'jsonDecode'),
        );
    }

    public function jsonDecode($str) {
        return json_decode($str);
    }
}

Étape 2 : Enregistrez l'extension

Ajoutez ceci à votre fichier Services.xml :

<service>

Étape 3 : Utilisez l'extension

Dans votre modèle Twig, vous pouvez utilisez le | json_decode filtre comme ceci :

{% set obj = form_label(category) | json_decode %}

Cela décodera la chaîne JSON dans la variable form_label(category) et attribuera l'objet décodé à obj.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn