Php 编辑字符集

Php 编辑字符集,php,mysql,html,encoding,ckeditor,Php,Mysql,Html,Encoding,Ckeditor,我更新了我的web应用程序,使用UTF-8而不是ANSI 我采取了以下措施来定义字符集: mysql_set_charset("utf8"); // PHP <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> // HTML utf8_general_ci // In MySQL 在数据库(phpMyAdmin视图)和正常文本字段输出(HTML、或)中,一切看起来都很好(我看到é,不是é

我更新了我的web应用程序,使用UTF-8而不是ANSI

我采取了以下措施来定义字符集:

mysql_set_charset("utf8"); // PHP
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> // HTML
utf8_general_ci // In MySQL
在数据库(phpMyAdmin视图)和正常文本字段输出(HTML、
)中,一切看起来都很好(我看到
é
,不是
é;
,不是
Ã
,耶)

然而,CKEditor在编码方面有一些问题。请参阅从数据库中获取的相同字段的附加图像,该字段显示在文本区域中,然后显示在CKEditor重新计算的文本区域中:

这似乎在ckeditorjavascript代码中(可能是一个固定的字符集),但我在配置中找不到它。同样,由于
é
在普通HTML中正确显示(真正的UTF-8
é
,而不是
é;
é的
),我很确定不是PHP/MySQL查询出错(但我可能弄错了)


编辑:这似乎是在UTF-8文本上应用
htmlentities
的症状,默认情况下,它是用拉丁语1编码的。有可能使用
htmlspecialchars
或指定字符集(“utf-8”),但我不知道在CKEditor中在哪里修改该字符集

这是我的方法错了,而不是CKEditor的方法。在查找错误的文件时,错过了
htmlspecialchars上的UTF-8编码

错误的是我的方法,而不是CKEditor的方法。正在查找错误的文件,并且错过了
htmlspecialchars

上的UTF-8编码。此线程似乎有点过时,但回答它可以帮助任何正在查找响应的人

允许
CKEditor
将字符
ee
处理为
ee
而不是
é
;将
实体的配置设置为
false
,如下所示:

config.entities_latin = false;
或者,您可能只想将以下选项设置为false:

config.entities = false;
config.basicEntities = false;

这条线索似乎有点过时,但回答它可以帮助任何人寻找答案

允许
CKEditor
将字符
ee
处理为
ee
而不是
é
;将
实体的配置设置为
false
,如下所示:

config.entities_latin = false;
或者,您可能只想将以下选项设置为false:

config.entities = false;
config.basicEntities = false;

您还可以在数据库连接中使用:
$connection->query(“设置名称‘utf8’”)

并记住将db和/或表排序规则设置为utf8。。。我更喜欢
utf8\u general\u ci

您也可以在数据库连接中使用:
$connection->query(“设置名称“utf8”)
并记住将db和/或表排序规则设置为utf8。。。我更喜欢
utf8\u general\u ci