php变量输出乱码的解决办法:1、通过“iconv("GB2312","UTF-8",'中文');”进行转换;2、把UTF-8改成gb2312;3、修改php.ini文件配置。
本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
用echo输出的中文显示成乱码,
其实应该是各种服务器脚本都会遇到这个问题,
根本还是编码问题,
一般来说出于编码兼容考虑大多的页面都将页面字符集定义为utf-8
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
这时候要正常显示中文需要转化一下编码方式,比如
echo iconv("GB2312","UTF-8",'中文');
就不会乱码了
还有其他方法,比如
在php的echo前面加入header("Content-Type:text/html;charset=gb2312");
当然简体中文页面也可以干脆地,
把
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
中的UTF-8改成gb2312
实际中遇见奇怪的现象,
在本机服务器上正常显示的页面,传上服务器就echo出来乱码,
没仔细琢磨过这个缘由,因为通过iconv函数GB2312、UTF-8换换位置重新编码下就正常了,
不过估计肯定是APACHE,更确切说是PHP服务端的设置不同造成的,
看看PHP.INI应该就能解决。
在每个页面添加 echo iconv("GB2312","UTF-8",'中文');或者dc5af82e015efcbabfa254e2a50da957会比较痛苦。
最后看到可能是php.ini文件配置问题,就打开php.ini文件,找到 ;default.charset="UTF-8"--->default.charset="UTF-8" 把前面的分号去掉(去掉注释),重启apache服务,刷新页面,中文显示正常。
推荐学习:《PHP视频教程》
以上是php变量输出乱码怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!