一、字符编码不一致
MySQL 安装时默认字符集为 latin1,而很多网站都使用 UTF-8 编码,这时可能导致查询结果出现乱码。可以使用如下命令修改 MySQL 编码:
ALTER DATABASE your_database_name CHARACTER SET utf8; ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8;
登录后复制
其中 your_database_name
和 your_table_name
分别替换为你的数据库和数据表名称。
二、数据库和页面编码不一致
未指定字符集时建立数据库连接,可能导致查询结果使用不同字符集,最终出现乱码。可以使用如下命令在连接时指定字符集:
mysqli_set_charset($link, 'utf8');
登录后复制
其中 $link
是数据库连接的变量名称,根据实际情况进行修改。
三、PHP版本不兼容
在 PHP5.5 及以下版本,mysql_
函数被废弃,建议使用 mysqli_
或 PDO
函数。如果你使用的是 mysql_
函数并且在 PHP7 以上版本中运行,那么查询结果可能出现乱码。建议升级至 mysqli_
或 PDO
函数。
四、转换字符集
在 PHP 中使用 iconv()
函数将字符从一种编码转换成另一种编码。例如将 GBK 编码转换为 UTF-8 编码:
$content = iconv('GBK', 'UTF-8', $content);
登录后复制
以上就是php mysql查询结果显示乱码如何解决的详细内容,更多请关注Work网其它相关文章!