我有這個模板吧:如何避免替換文字?
<blockquote>
<p>{{ message|replace({"\r\n\r\n":'</p><p>', "\r\r":'</p><p>', "\n\n":'</p><p>'}) }}</p>
</blockquote>
有了這個輸入
WOOP德鬥\ r \ NLA-DEE-DA \ r \ n \ r \ nFoo範德Bar \ r \ n \ r \ nMojo < script> alert('Test'); </SCRIPT>
它呈現這樣的:
Woop-de-doo La-dee-da</p><p>Foo van der Bar</p><p>Mojo<script>alert('Test');</script>
嗯,這是一個恥辱,我希望我的替代HTML渲染。如果您在結束巴掌|raw
,它的工作原理:
Woop-de-doo La-dee-da
Foo van der Bar
Mojo
除非它也運行從輸入文字,這顯然我不希望有發生的(潛在的危險)的腳本。
如何告訴Twig字面上使用我的替換文本,但仍然保持輸入文本轉義?
它不會做我想要的。正如我的代碼演示的那樣,我想要雙換行符來關閉並打開新段落,'
'。 – Alex
@Alex我編輯了我的答案 –
謝謝。我希望避免寫我自己的,但除非有人出面證明你錯了,我會接受這個答案。 – Alex