PHP读取文本文件时汉字显示乱码的处理方法
有人用PHP读取txt文件里的内容源代码,见如下的脚本程序。
例1:
图片地址http://album.sina.com.cn/pic/4c0b7a1bzx6GLARDWeDcb
虽然“通信录.txt”里的内容是中文的,读取出来的应该是中文,但读取显示出来的结果却是一堆乱码!
那么出现乱码,如何处理?
要想彻底解决该问题,需搞清楚文字在计算机内编码格式、各种操作系统对文本文件中换行符的处理办法(见本文后面的小知识、以及参考资料)。
现在归纳一下思路,无外乎下列几种情况:
1. 虽然显示的是乱码,但读取的汉字内容是正确的,只是显示的是乱码。
解决的方法是在网页文件.html中声明字符的编码格式,如:
图片地址http://album.sina.com.cn/pic/001oldd9zy6GMLhUapTdd
但上述的charset=utf-8可能导致汉字显示为乱码,为保险起见可改为charset=GB2312。
如果你单纯地编写PHP脚本程序,不知这个脚本运行的页面编码格式,为保险起见也可以在PHP脚本(程序)中加一行header("Content-Type: text/html; charset=GB2312") ,这一行是头信息,必须放在PHP脚本开头,规定文字的显示方式,示例如下:
图片地址http://album.sina.com.cn/pic/4c0b7a1bzx6GLB6fX6Ua0
2.虽然显示的是乱码,但读取的汉字内容也是乱码。