网站地图    收藏   

主页 > 后端 > php资料库 >

PHP读取txt文件中文乱码的解决方案_自学php网

来源:自学PHP网    时间:2014-12-04 22:12 作者: 阅读:

[导读] meta charset='utf-8' ?php $res=glob('*.txt');//读取文件夹内的txt文件 echo '直接输出文件名,中文都乱码,因为这个php脚本的编码为utf-8:/br/br'; foreach($res as $value) { echo $value.'/br'; } echo '/br下面用ic...

<meta charset='utf-8'>
<?php
$res=glob('*.txt');//读取文件夹内的txt文件
echo '直接输出文件名,中文都乱码,因为这个php脚本的编码为utf-8:</br></br>';
foreach($res as $value)
{
echo $value.'</br>';
}
echo '</br>下面用iconv函数进行编码转换:</br></br>';
foreach($res as $value)
{
echo iconv('gb2312','utf-8',$value).'</br>';//第一个参数为输入数据的编码,即我们读取的文件名的编码,第二个参数是输出数据的编码,也就是现显示在我们网页上
//的编码,为utf-8
}
echo '</br>直接输出文件内容:保存为asc格式的txt文本内容乱码,因为php脚本是utf-8格式</br></br>';
foreach($res as $value)
{
echo iconv('gb2312','utf-8',$value).'的内容为:'.file_get_contents($value).'</br>';
}
echo '</br></br>下面用iconv函数进行编码转换:</br></br>';
foreach($res as $value)
{
$str=file_get_contents($value);
$isutf8=mb_check_encoding($str,'utf-8');//查看文本内容的编码是否与网页编码一致
if($isutf8!='utf-8')
{
echo iconv('gb2312','utf-8',$value).'的内容为:'.iconv('gb2312','utf-8',file_get_contents($value)).'</br>';//不一致则进行转换
}
else
{
echo iconv('gb2312','utf-8',$value).'的内容为:'.file_get_contents($value).'</br>';
}
}
?>
txt默认保存为ANSI格式,转换对应gb2312,我们建议保存为utf-8格式,它应用更广泛,而且兼容性更好,如果你的txt文本内容为纯中文,那么你可以使用ANSI

下载本示例源码包:http://pan.baidu.com/share/link?shareid=3325633428&uk=4228329732

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论