我使用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; ,我就是这样。