UnsetBom.class.php用于清除utf8+bom文件的bom,即头三个字节 0xEF 0xBB 0xBF,继承FindFile类
?php/** 遍历所有文件,清除utf8+bom 0xEF 0xBB 0xBF* Date: 2013-03-21* Author: fdipzone* Ver: 1.0class UnsetBom extends FindFile{ private $filetype = array(); // 需要处理的文件类型 // 初始化 public function __construct($filetype=array()){ if($filetype){ $this- filetype = $filetype; /** 重写FindFile handle方法 * @param String $file 文件路径 protected function handle($file){ if($this- check_ext($file) $this- check_utf8bom($file)){ // utf8+bom $this- clear_utf8bom($file); // clear array_push($this- files, $file); // save log /** 检查文件是否utf8+bom * @param String $file 文件路径 * @return boolean private function check_utf8bom($file){ $content = file_get_contents($file); return ord(substr($content,0,1))===0xEF ord(substr($content,1,1))===0xBB ord(substr($content,2,1))===0xBF; /** 清除utf8+bom * @param String $file 文件路径 private function clear_utf8bom($file){ $content = file_get_contents($file); file_put_contents($file, substr($content,3), true); // 去掉头三个字节 /** 检查文件类型 * @param String $file 文件路径 * @return boolean private function check_ext($file){ $file_ext = strtolower(array_pop(explode( . ,basename($file)))); if(in_array($file_ext, $this- filetype)){ return true; }else{ return false;?
Demo unset utf8 bom
?phprequire( FindFile.class.php require( UnsetBom.class.php $folder = dirname(__FILE__);$obj = new UnsetBom(array( php , css , js // 文件类型$obj- process($folder);print_r($obj- files);?
本文关于PHP 遍历文件夹及文件类及处理类 的理解,更多相关内容请关注php 。
相关推荐:
了解正向代理与反向代理的区别
如何使用Apache 搭建虚拟主机
如何通过sh memcached 进程启动及监控
以上就是关于PHP 遍历文件夹及文件类及处理类 的理解的详细内容,PHP教程
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答