【发布时间】:2010-11-09 15:29:10
【问题描述】:
标签: html database zend-framework character-encoding special-characters
标签: html database zend-framework character-encoding special-characters
这是一篇非常好的文章,在我开始 Web 开发时帮助了我。我在多语言环境中工作,所以我经常碰到这些东西(只是为了增加这篇文章的精彩:)
我始终确保我的文件以 UTF8 行编码保存,我的 php 头文件将字符集声明为 utf8,我的数据库使用 utf8_general_ci 进行排序,并且我的 html 头标记包含声明内容的元标记作为 utf8。我认为这涵盖了它。
HTH :)
编辑:只是添加(更针对您的特定问题)检查您的 PHP 代码是否将您的结果视为 utf8。数据可能会正确存储在数据库中,但可以在提供服务时进行转换。
【讨论】:
çã 而不是 çã?或者 çã应该怎么做?
确保您的数据库使用 UTF-8 字符集并且您的数据库连接(字符在 MySQL 和您的 PHP 代码之间传输的编码)是 UTF-8(请参阅 this post 以供参考)。
另请注意,PHP 中的某些字符串操作会破坏 UTF8 编码的字符串,因为它们的工作假设是“1 char = byte”,而 UTF 8 则不成立。htmlspecialchars 不适用于 UTF-8 编码的字符串。
【讨论】:
尝试更改 .php 文件编码 - 打开 .php 文件并将其保存(或覆盖)为 utf8 文件。希望对您有所帮助。
【讨论】: