IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[Twig] Remplacer une chaine de caractères en balises HTML


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de jamdinhe
    Inscrit en
    Avril 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 167
    Par défaut [Twig] Remplacer une chaine de caractères en balises HTML
    Bonjour,
    je rencontre actuellement un problème dans Twig,
    je cherche à faire passer une chaine de caractère en variable comme ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $twig->display('template.twig', ['msg'=>"je suis un message composé #:-)#"])
    dans mon template.twig
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    {% block body %}
    {{ msg|replace({'#:-)#' : '<img src="smiley/sourire.png" alt=":-)"/>'}) }}
    {% endblock %}
    En sortie j'ai toute la balise <img src="smiley/sourire.png" alt=":-)/> affiché dans la page !
    Alors que je voulais juste afficher un smiley à la place de #:-)#
    j'ai trouvé le filtre raw, mais il n'est applicable qu'à l'affichage, ça me fait perdre la sécurité de l'affichage pour d'autre message et dans d'autre blocs,

    y a t-il moyen de faire passer le <img src="smiley/sourire.png" alt=":-)/> en safe ? quitta le mettre dans une variable twig

    Merci de m'aider à régler ce problème
    Amine

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 699
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 699
    Par défaut
    Peut-être que ce traitement à plus ça place sur le code HTML

    par exemple en commençant comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $twig->display(
        'template.twig'
        , [
            'msgHtml' => htmlspecialchars("je suis un mess<a>ge composé #:-)#"),
        ]
    );
    et ensuite faire le remplacement dans "msgHtml" et afficher le résultat en "raw"

Discussions similaires

  1. Remplacer une chaine de caractère dans un fichier texte.
    Par Empty_body dans le forum VBA Access
    Réponses: 1
    Dernier message: 19/01/2008, 11h16
  2. remplacer une chaine de caractères avec sed
    Par salseropom dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 15/05/2007, 14h56
  3. JSP : comment remplacer une chaine de caractères par une autre
    Par techquos dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 14/12/2006, 09h37
  4. Réponses: 4
    Dernier message: 18/07/2006, 16h31
  5. Purger une chaine de caractère des balises de mises en forme
    Par mr_neness dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/03/2006, 19h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo