我尝试转义变量输出以在XML Export中转义HTML。我不知道我做错了什么。 Export用于xt:commerce 5在线商店。
Smarty应该是v.3.1
模板:
<?xml version="1.0" encoding="UTF-8" ?>
<orders>
{assign var=foo value='<b>baaa& ü ä ß ö <> aaa</b>'}{$foo|escape:'htmlall'}
</orders>
输出
<?xml version="1.0" encoding="UTF-8" ?>
<orders>
<b>baaa& ü ä ß ö <> aaa</b>
</orders>
答案 0 :(得分:0)
转义html可确保您的浏览器不会将内容用作html,例如,如果删除转义符,则文本将为粗体。 要从字符串中实际删除标记,必须使用strip_tags(https://www.smarty.net/docs/en/language.modifier.strip.tags.tpl):
<?xml version="1.0" encoding="UTF-8" ?>
<orders>
{assign var=foo value='<b>baaa& ü ä ß ö <> aaa</b>'}{$foo|strip_tags:}
</orders>
输出:
<xml version="1.0" encoding="UTF-8" ?="">
<orders>
baaa& ü ä ß ö aaa
</orders>