示例:
$smarty->assign('string', '<p>Germans use "Ümlauts" and pay in €uro</p>');
{$string|escape|unescape:"html"}
结果:
<p>Germans use 'Ümlauts' and pay in €uro</p>
我做错了什么......
答案 0 :(得分:1)
出现这种情况的原因不止一个。
检查
的编码通常它是引发这种情况的其中之一。
为了避免这种问题,在许多情况下最好的方法是在整个项目中使用utf8,这意味着将smarty模板和php转换为utf8并在html标头中使用正确的utf8标签。
HTML 4.01:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
HTML5:
<meta charset="UTF-8">
答案 1 :(得分:1)
您还应该在文档中添加UTF-8以转义函数:http://www.smarty.net/docsv2/en/language.modifier.escape