我将PHP字符集设置为utf-8:
utf-8
header('Content-Type: text/html; charset=utf-8');
我已经将currencyMySQL中的列设置为varchar(1)collation utf8_unicode_ci。
currency
varchar(1)
utf8_unicode_ci
但是,PHP中的以下代码:
$currency = '€'; $sql = "UPDATE myTable SET currency = '$currency' WHERE user = '$user'"; mysql_query($sql);
在MySQL中产生以下字符:
â
如何获得€符号以正确存储在MySQL中?
€
确保您的 脚本文件 (包含该行的文件)
$currency = '€';
编码为UTF-8。您应该在编辑器或IDE的“另存为”对话框中选择一种效果。
然后确保您的 连接 也是UTF-8编码的-默认情况下为ISO-8859-1。
连接到数据库后,对于5.0.7 之前 的mySQL :
mysql_query("SET NAMES utf8");
对于mySQL 5.0.7及更高版本:
mysql_set_charset("utf8");