PHP批量检测并去除文件BOM头代码实例

2015-01-24信息快讯网

因为文件头信息输出BOM头信息,有时会对程序的执行结果造成影响,那么此时即应对这些文件的BOM信息进行去除

如下代码为PHP方式去除当前目录及子目录所有文件BOM信息的代码,新建文件,将其放倒根目录下,然后浏览器访问即可。

<?php
if (isset($_GET['dir'])) { //设置文件目录  
    $basedir = $_GET['dir'];
} else {
    $basedir = '.';
}

$auto = 1; checkdir($basedir);

function checkdir($basedir) { if ($dh = opendir($basedir)) { while (($file = readdir($dh)) !== false) { if ($file != '.' && $file != '..') { if (!is_dir($basedir . "/" . $file)) { echo "filename: $basedir/$file " . checkBOM("$basedir/$file") . " <br>"; } else { $dirname = $basedir . "/" . $file; checkdir($dirname); } } } closedir($dh); } } function checkBOM($filename) { global $auto; $contents = file_get_contents($filename); $charset[1] = substr($contents, 0, 1); $charset[2] = substr($contents, 1, 1); $charset[3] = substr($contents, 2, 1); if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { if ($auto == 1) { $rest = substr($contents, 3); rewrite($filename, $rest); return ("<font color="red">BOM found, automatically removed.</font>"); } else { return ("<font color="red">BOM found.</font>"); } } else return ("BOM Not Found."); }

function rewrite($filename, $data) { $filenum = fopen($filename, "w"); flock($filenum, LOCK_EX); fwrite($filenum, $data); fclose($filenum); } ?>

php去除数组中重复数据
php 模拟 asp.net webFrom 按钮提交事件实例
PHP fastcgi模式上传大文件(大约有300多K)报错
PHP常用技术文之文件操作和目录操作总结
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
php实现的zip文件内容比较类
php实现的支持断点续传的文件下载类
Chrome Web App开发小结
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
修改destoon会员公司的伪静态中的com目录的方法
从零开始学YII2框架(二)通过 Composer 安装扩展插件
php中隐形字符65279(utf-8的BOM头)问题
PHP中遇到BOM、<feff>编码导致json_decode函数无法解析问题
PHP中把stdClass Object转array的几个方法
php代码审计比较有意思的例子
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
php 解压rar文件及zip文件的方法
使用php语句将数据库*.sql文件导入数据库
PHP按行读取文件时删除换行符的3种方法
php环境无法上传文件的解决方法
PHP批量删除、清除UTF-8文件BOM头的代码实例
php警告Creating default object from empty value 问题的解决方法
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
PHP调用VC编写的COM组件实例
php去除换行(回车换行)的三种方法
去除php注释和去除空格函数分享
使用php清除bom示例
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
php去除字符串换行符示例分享
分享下页面关键字抓取components.arrow.com站点代码
PHP 下载文件时自动添加bom头的方法实例
©2014-2024 dbsqp.com