昨天在本地环境创建了一个文件,文件编码是UTF-8格式,打印一个简单的语句竟然出现了中文乱码,折腾了很久,才找到了原因。
乱码问题
昨天写了一个很简单的php输出中文页面,但是出现了乱码问题,第一反应可能是脚本文件的编码格式有问题,看了下,没有问题,原文件编码为utf-8,那是什么原因呢?
这种问题第一次碰到,虽然可以在输出页面加 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
,可以暂时解决,但是这种方法治标不治本,从根本解决不了问题,后来在网上查了下,原来是 php.ini
的配置的默认字符设置的问题。
也可以这样在头文件加header处理,但是这样的方法也治标不治本,推荐使用下边修改php.ini
的方法:
header("Content-type: text/html; charset=utf-8");
解决方法
打开php.ini
文件,找到 ;default_charset = "iso-8859-1"
, 改为:default_charset = "UTF-8"
把前面的分号去掉(去掉注释),字符集改为UTF-8
, 重启apache服务,刷新页面,中文显示正常。
特此记录。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。