PHP 页面中文乱码
先统一成 UTF-8。乱码通常不只由 PHP 一处造成,至少要检查 HTML 声明、PHP 响应头、源文件编码和数据库连接编码 是否一致。
HTML
HTML5 直接在 <head> 中加入:
<meta charset="utf-8">
PHP
如果页面由 PHP 输出 HTML,可以在任何正文输出之前发送响应头:
header('Content-Type: text/html; charset=UTF-8');
注意 header() 必须在 echo、HTML 输出或其他响应内容之前调用,否则可能出现 headers already sent。
仍然乱码时
- 确认
.php/.html文件本身保存为 UTF-8; - 如果数据来自 MySQL,检查数据库、表、连接字符集,不要只改浏览器端的
<meta>; - 不要在 UTF-8、GBK、Latin-1 之间反复转换来“碰运气”,先找出哪一层编码不一致。
评论将在接近此处时加载,也可点击立即加载。