Php Smarty特殊字符问题

Php Smarty特殊字符问题,php,utf-8,smarty,Php,Utf 8,Smarty,我在我的网站上使用了西班牙语。当iinserted字符像í,á,é,ó时,它将正确地插入db中,但它不能在前端显示,它显示如下� 前端 例如: Insert name : Test teachér in database it inserted correctly but in front it display as Test teach�r. 我曾经 但也没有任何变化。这与smarty无关 检查存储数据的db字符集,并将其设置为UTF-8常规CI 检查数据库连接集名称utf8的字符集

我在我的网站上使用了西班牙语。当iinserted字符像í,á,é,ó时,它将正确地插入db中,但它不能在前端显示,它显示如下� 前端

例如:

   Insert name : Test teachér in database it inserted correctly but in front it display as
Test teach�r.
我曾经
但也没有任何变化。

这与smarty无关

检查存储数据的db字符集,并将其设置为UTF-8常规CI 检查数据库连接集名称utf8的字符集 检查脚本的输出,如果它在UTF中,您可以使用meta字符集或在headers内容类型中执行。 内容类型:text/html;字符集=UTF-8

在这些操作之后,您应该有适当的输出


您还可以选择检查处理字符串的函数是否支持UTF-8。

您是否也将文档文件保存为UTF-8?您以前没有在PHP中设置其他编码吗?如果您使用数据库,数据库数据是否以utf-8格式保存?这是一个非常广泛的问题。您可以从数据库中获取数据,而无需设置正确的编码,您可以使用一些额外的函数来修改输出。如果数据库中的数据正确,您应该首先查看phpmyadmin,向我们展示如何从数据库中获取数据并将其分配给smarty,并展示smarty代码如何显示它Marcin您是否了解我的问题我期望的是什么?我在数据库中使用了常规排序规则:utf8\u general\u ci。是的,我知道,但您可能会在多个地方遇到问题。如果不提供确切的细节,我们只能猜测可能的错误。例如,您可以在某处使用substr或strtolower函数,这也会导致问题。我不是说你不用它们。我只是不知道,因为你的问题中缺少很多细节和代码。你能告诉我你想要的细节是什么吗?我把你的细节发送给我,我在标题中使用了什么,插入时我使用了mysql_set_charset'utf8';