Ich habe den folgenden Code, der eine Zeichenfolge in HTML-Ausgabe rendert. Wie kann ich verhindern, dass der Text für HTML nicht mehr angezeigt wird?HTML-Escaping deaktivieren, wenn eine Twig-Zeichenfolge manuell gerendert wird
$template = '{{ who }} bar';
$params = array('who' => "Foo's");
$twig = new \Twig_Environment(new \Twig_Loader_String);
var_dump($twig->render($template, $params));
Ausgänge:
string(14) "Foo's bar"
Wie kann ich es machen Ausgabe dieser Stelle?
string(14) "Foo's bar"
Ich verstehe, dass '{{ who }} bar'
zu '{{ who|raw }} bar'
Ändern wird das Problem beheben, aber ich möchte dies in der Rendering-Stufe zu lösen. Ich möchte nicht alle Vorlagen ändern.
Haben Sie standardmäßig Flucht deaktivieren möchten global oder suchen Sie nur bestimmte Parameter unescaped zu machen? – Gerry
Keine faire Änderung der Frage. Wie Gerry implizierte, schalten Sie einfach im Zweig aus. Ich gehe davon aus, dass Sie überhaupt kein HTML generieren. – Cerad
@Cerad Ich habe es nicht bearbeitet, was Sie an der Revisionshistorie erkennen können. – mattalxndr