需要去除BOM,就把附件里的tool.php文件放到目标目录,然后在浏览器访问tool.php即可!
复制代码 代码如下:
<?php
//此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除
$basedir="."; //修改此行为需要检测的目录,点表示当前目录
$auto=1; //是否自动移除发现的BOM信息。1为是,0为否。
//以下不用改动
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file!='.' && $file!='..' && !is_dir($basedir."/".$file))
echo "filename: $file ".checkBOM("$basedir/$file")." <br>";
}
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文件中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._<a href=http://www.joyphper.net>http://www.joyphper.net</a></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);
}
?>
相关推荐:
javascript RegExp 对象属性与方法和应用
学习JS面向对象成果 借国庆发布个最新作品与大家交流
executesql 存储过程
在oracle 数据库中查看一个sql语句的执行时间和SP2-0027错误
常见的数字验证正则表达式整理
颜色变换 像字符逐字输入的欢迎词
Javascript 数组添加一个 indexOf 方法的实现代码
php面向对象全攻略 (十七) 自动加载类
巧用DOS 伪装保护文件完整版
JSP 报表打印的一种简单解决方案
js 数组实现一个类似ruby的迭代器
服务器升级显优势 掀起企业选购热潮
SQLServer 数据修复命令DBCC一览
跨服务器查询导入数据的sql语句
Oracle 中文字段进行排序的sql语句
MSSQL汉字转拼音函数实现语句
asp 实现的冒泡排序程序
php self,$this,const,static,-&gt;的使用
jQuery 使用手册(五)
添加FCKeditor插件需要注意的地方
学习ExtJS Window常用方法
JavaScript 对象成员的可见性说明
html 锁定页面(js遮罩层弹出div效果)
apache2.2 支持.net 3.5的设置方法
php利用header函数实现文件下载时直接提示保存
asp.net服务器上几种常见异常的解决方案.
innerhtml用法 innertext用法 以及innerHTML与innertext的区别
javascript 页面划词搜索JS
提高网站性能之 如何对待JavaScript
PHP 单引号与双引号的区别
PHP 身份验证方面的函数
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
sql中all,any,some用法
通过隐藏option实现select的联动效果
asp.net(c#)获取内容第一张图片地址的函数
CSS 渐变背景的6个演示代码
csdn 论坛技术区平均给分功能
jquery animate 动画效果使用说明
apache Php5配置方法
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
asp.net下检测SQL注入式攻击代码
JSP EL表达式详细介绍
SQLSERVER中union,cube,rollup,cumpute运算符使用说明
PHP 变量类型的强制转换
xhEditor的异步载入实现代码
下载站控制介绍字数显示的脚本 显示全部 隐藏介绍等功能
jQuery checkbox全选/取消全选实现代码
配置IIS服务器 支持sis下载等
MSSQL2005 INSERT,UPDATE,DELETE 之OUTPUT子句使用实例
Vista IIS7添加PHP支持的方法