我正在使用PHP + HTML + smarty(作为模板)。
有一些动态内容来自用户的输入。
当用户输入一些特殊字符,例如—.‘@•
时,它已在变量中正确保存。
但是当我尝试在textbox
(使用智能模板)中显示相同的特殊内容时,它会显示如下内容:�.�@�
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> is already included in the
Header`。
我已经提到过:utf-8 special characters not displaying
它的解决方案都不适合我。
答案 0 :(得分:0)
确保处理字符串的所有内容都支持UTF-8。主要是:
如果在显示之前将字符串存储在表中,请检查它是否为UTF-8编码(例如,对于MySQL,在创建表时为DEFAULT CHARSET=utf8
。)
确保视图文件保存为UTF-8。在文本编辑器中,您通常可以选择编码。或者选择&#34;另存为...&#34;并选择那里的编码。
我不熟悉Smarty,但要确保它没有将字符串转换为某些非UTF8编码。