在PHP / MySQL数据库中为字符串指定字符编码

时间:2015-04-04 02:00:14

标签: php html mysql utf-8 character-encoding

我使用PDO / MySQL在PHP中创建了一个CMS。在CMS的每个页面上,我将HTML字符集输入为UTF-8:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

我有几个<textfield>元素,用户可以在其中输入项目的一些描述性文本。这适用于键入<textarea>的字符串,但客户端倾向于从其他文档中复制和粘贴它的外观。我经常在页面上看到一个�,但是,在数据库中,它实际上是连字符或撇号等。

我知道这是一个编码问题,但我不确定的问题是什么。如果我将页面字符集设置为UTF-8,内容是否应保存为UTF-8?

如果我将charset更改为Latin-1(ISO 8859-1),则符号会正确显示。我的印象是,UTF-8的字符范围比拉丁语-1更宽,这种情况会增加混乱。

在PHP中有解决方法吗?我可以强制MySQL中的字段成为特定的字符集吗?

我已经检查了一些关于SSO的问题和答案而没有太多运气。大部分答案都是 &#34;请确保您正在宣布您的字符集&#34; ,我就是这样。

0 个答案:

没有答案