header('Content-type: text/html; charset=utf-8');虽然我可以看到保存在MySQL表中的数据是希腊字符,但是当我试图从PHP中回显它们时,它们会变成"?“问号。
发布于 2012-05-22 15:46:33
确保为UTF8设置了客户端连接。示例:
SQL
SET NAMES UTF8;MySQLi
mysqli_set_charset('utf8');PDO
$handle = new PDO("mysql:host=localhost;dbname=dbname",
'username', 'password',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
));PHP (不建议使用-不使用)
mysql_set_charset('utf8');发布于 2012-05-22 15:45:58
尝试使用htmlentities实体在回显数据之前对您的特殊字符进行编码。
echo htmlentities($data);发布于 2012-05-22 15:48:06
确保使用ANSI as UTF-8 aka UTF-8 without BOM保存您的文件。您可以使用NotePad++:http://npp-community.tuxfamily.org/documentation/notepad-user-manual/document-properties/encoding来完成它。
此外,在使用UTF-8 (Unicode)时,请记住:
https://stackoverflow.com/questions/10705400
复制相似问题