php批量转换文件夹下所有文件编码的函数类


Posted in PHP onAugust 06, 2017

函数代码:

<?php
/**
 * 把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码
 * @param string $filename
 */
function iconv_file($filename,$input_encoding='gbk',$output_encoding='utf-8')
{
  if(file_exists($filename))
  {
    if(is_dir($filename))
    {
      foreach (glob("$filename/*") as $key=>$value)
      {
        iconv_file($value);
      }
    }
    else
    {
      $contents_before = file_get_contents($filename);
      /*$encoding = mb_detect_encoding($contents_before,array('CP936','ASCII','GBK','GB2312','UTF-8'));
      echo $encoding;
      if($encoding=='UTF-8') mb_detect_encoding函数不工作
      {
        return;
      }*/
      $contents_after = iconv($input_encoding,$output_encoding,$contents_before);
      file_put_contents($filename, $contents_after);
    }
  }
  else
  {
    echo '参数错误';
    return false;
  }
}
iconv_file('./test');
?>

注意:把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码

PHP 相关文章推荐
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
Dec 16 PHP
初级的用php写的采集程序
Mar 16 PHP
CURL的学习和应用(附多线程实现)
Jun 03 PHP
使用PHP计算两个路径的相对路径
Jun 14 PHP
Thinkphp的volist标签嵌套循环使用教程
Jul 08 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
基于PHP实现等比压缩图片大小
Mar 04 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
May 29 PHP
php-beanstalkd消息队列类实例分享
Jul 19 PHP
php封装单文件上传到数据库(路径)
Oct 15 PHP
PHP实现将上传图片自动缩放到指定分辨率,并保持清晰度封装类示例
Jun 17 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 PHP
php mysql数据库操作类(实例讲解)
Aug 06 #PHP
PHP基于自定义类随机生成姓名的方法示例
Aug 05 #PHP
PHP实现腾讯与百度坐标转换
Aug 05 #PHP
laravel5.4生成验证码的实例讲解
Aug 05 #PHP
CakePHP框架Model函数定义方法示例
Aug 04 #PHP
CakePHP框架Model关联对象用法分析
Aug 04 #PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
Aug 04 #PHP
You might like
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
论坛特效代码收集(落伍转发-不错)
2006/12/02 Javascript
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
jquery实现marquee效果(文字或者图片的水平垂直滚动)
2013/01/07 Javascript
jQuery阻止同类型事件小结
2013/04/19 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
JavaScript实现广告的关闭与显示效果实例
2015/07/02 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
工作中比较实用的JavaScript验证和数据处理的干货(经典)
2016/08/03 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
Angular中使用better-scroll插件的方法
2018/03/27 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
Vue-cli3.X使用px2 rem遇到的问题及解决方法
2019/08/08 Javascript
解决layer弹出层msg的文字不显示的问题
2019/09/11 Javascript
nuxt 路由、过渡特效、中间件的实现代码
2020/11/06 Javascript
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
Python打包文件夹的方法小结(zip,tar,tar.gz等)
2016/09/18 Python
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
python的pytest框架之命令行参数详解(下)
2019/06/27 Python
分享一个pycharm专业版安装的永久使用方法
2019/09/24 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
Python autoescape标签用法解析
2020/01/17 Python
基于plt.title无法显示中文的快速解决
2020/05/16 Python
深入了解Python 变量作用域
2020/07/24 Python
explicit和implicit的含义
2012/11/15 面试题
汽修专业学生自我鉴定
2013/11/16 职场文书
《长城》教学反思
2014/02/14 职场文书
化学专业大学生职业生涯规划范文
2014/09/13 职场文书
2014年数学教师工作总结
2014/12/03 职场文书
财政局个人总结
2015/03/04 职场文书
《将心比心》教学反思
2016/02/23 职场文书
决心书格式及范文
2019/06/24 职场文书
如何制定销售人员薪酬制度?
2019/07/09 职场文书
提升Nginx性能的一些建议
2021/03/31 Servers
阿里云ECS云服务器快照的概念以及如何使用
2022/04/21 Servers