国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > php保存文件用utf-8格式

php保存文件用utf-8格式

来源:程序员人生   发布时间:2014-07-19 09:20:44 阅读次数:4673次
php保存文件用utf-8格式,大家都知道,PHP可以直接创建文件
例如:
  1. fopen('dir.txt','w');//创建并打开dir.txt 

这个表示创建并打开dir.txt文件,然后就可以往里面写入数据了。问题来了,写入数据保存的格式都是ANSI,无法保存UTF8格式,如何测试都不能成功,经过上网查询,和自己实践,研究结果如下:
以下代码可以直接创建urt8格式的文本文件:
 

  1. <?php   
  2. $f=fopen("test.txt""wb");   
  3. $text=utf8_encode("a!");    
  4. //先用函数utf8_encode将所需写入的数据变成UTF编码格式。    
  5. $text="\xEF\xBB\xBF".$text;    
  6. //"\xEF\xBB\xBF",这串字符不可缺少,生成的文件将成为UTF-8格式,否则依然是ANSI格式。    
  7. fputs($f$text);   
  8. //写入。   
  9. fclose($f);   
  10. ?> 

 这样创建出的文件编码格式确实是utf-8,但是放在文件中如果有汉字,就会出现乱码的现象,经过一番调试,代码如下:
 

  1. <?php   
  2. $ctxtsubmit="好呀";   
  3. $f=fopen("../".$file"wb");   
  4.     //$text=utf8_encode($ctxtsubmit);   
  5.     //先用函数utf8_encode将所需写入的数据变成UTF编码格式。   
  6.     $text="\xEF\xBB\xBF".$ctxtsubmit;   
  7.      //"\xEF\xBB\xBF",这串字符不可缺少,生成的文件将成为UTF-8格式,否则依然是ANSI格式,www.wfuyu.com 程序员人生网。   
  8.     fputs($f$text);   
  9.     //写入。   
  10.      fclose($f);    
  11. ?> 

 

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生