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用户指南-cookies部分
Oct 09 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
Jul 02 PHP
php读取纯真ip数据库使用示例
Jan 26 PHP
PHP常用处理静态操作类
Apr 03 PHP
PHP模板引擎smarty详细介绍
May 26 PHP
php遍历树的常用方法汇总
Jun 18 PHP
php实现的单一入口应用程序实例分析
Sep 23 PHP
Symfony2学习笔记之模板用法详解
Mar 17 PHP
php写app接口并返回json数据的实例(分享)
May 20 PHP
yii gridview实现时间段筛选功能
Aug 15 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
PHP 构造函数和析构函数原理与用法分析
Apr 21 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
无线电的诞生过程
2021/03/01 无线电
destoon文章模块调用企业会员资料的方法
2014/08/22 PHP
PHP中判断文件存在使用is_file还是file_exists?
2015/04/03 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
PHP超低内存遍历目录文件和读取超大文件的方法
2019/05/01 PHP
拖动Html元素集合 Drag and Drop any item
2006/12/22 Javascript
jquery 插件开发方法小结
2009/10/23 Javascript
jQuery toggle()设置CSS样式
2009/11/05 Javascript
jQuery中prevUntil()方法用法实例
2015/01/08 Javascript
详解JavaScript中的blink()方法的使用
2015/06/08 Javascript
学习使用jquery iScroll.js移动端滚动条插件
2020/03/24 Javascript
通过sails和阿里大于实现短信验证
2017/01/04 Javascript
nodejs个人博客开发第七步 后台登陆
2017/04/12 NodeJs
详解使用angularjs的ng-options时如何设置默认值(初始值)
2017/07/18 Javascript
vue elementui el-form rules动态验证的实例代码详解
2019/05/23 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
js实现自定义右键菜单
2020/05/18 Javascript
Javascript中window.name属性详解
2020/11/19 Javascript
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
详细解析Python中的变量的数据类型
2015/05/13 Python
python如何查看系统网络流量的信息
2016/09/12 Python
Python操作Excel之xlsx文件
2017/03/24 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
Python使用lambda表达式对字典排序操作示例
2019/07/25 Python
python读取Excel表格文件的方法
2019/09/02 Python
Python基于traceback模块获取异常信息
2020/07/23 Python
工程师必须了解的LRU缓存淘汰算法以及python实现过程
2020/10/15 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
Gap英国官网:Gap UK
2018/07/18 全球购物
乡镇爱国卫生月活动总结
2014/06/25 职场文书
三分钟自我介绍演讲稿
2014/08/21 职场文书
一年级数学下册复习计划
2015/01/17 职场文书
幼儿园感谢信
2015/01/21 职场文书
MySQL快速插入一亿测试数据
2021/06/23 MySQL
Typescript类型系统FLOW静态检查基本规范
2022/05/25 Javascript