>  기사  >  백엔드 개발  >  PHP는 폴더에 있는 모든 파일의 인코딩을 변환합니다. 웹 사이트의 다른 인코딩 버전을 게시하는 데 적합합니다.

PHP는 폴더에 있는 모든 파일의 인코딩을 변환합니다. 웹 사이트의 다른 인코딩 버전을 게시하는 데 적합합니다.

WBOY
WBOY원래의
2016-07-25 09:05:56916검색
PHP转换文件夹下所有文件的编码 适合发布网站的其他编码版本 比如你有一个GBK版本 你想有一个UTF8版本 或者你只有GBK的源码 你想二次开发 但是你不想改变IDE的编码方式 你可以用这个程序将其批量转化为UTF8
  1. /**
  2. * 把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码
  3. * @param string $filename
  4. */
  5. function iconv_file($filename,$input_encoding='gbk',$output_encoding='utf-8')
  6. {
  7. if(file_exists($filename))
  8. {
  9. if(is_dir($filename))
  10. {
  11. foreach (glob("$filename/*") as $key=>$value)
  12. {
  13. iconv_file($value);
  14. }
  15. }
  16. else
  17. {
  18. $contents_before = file_get_contents($filename);
  19. /*$encoding = mb_detect_encoding($contents_before,array('CP936','ASCII','GBK','GB2312','UTF-8'));
  20. echo $encoding;
  21. if($encoding=='UTF-8') mb_detect_encoding函数不工作
  22. {
  23. return;
  24. }*/
  25. $contents_after = iconv($input_encoding,$output_encoding,$contents_before);
  26. file_put_contents($filename, $contents_after);
  27. }
  28. }
  29. else
  30. {
  31. echo '参数错误';
  32. return false;
  33. }
  34. }
  35. iconv_file('./test');
  36. ?>
复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.