PHP在线清除文件BOM工具

模板网 2014-11-06

在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。

下面医疗模板库为大家提供一个PHP在线清除文件BOM工具。打包下载:PHP在线清除文件BOM工具

使用方法:将bom.php上传到网站根目录下,在浏览器中访问即可自动清除文件BOM。

PHP源码:

复制代码 代码如下:
<?php  
/*检测并清除BOM*/   
/*www.120muban.com*/
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);  
 }   
}  
}
}
}
 
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);
}
 
?>

 

相关文章

  1. dedecms中提取的zip压缩文件操作类zip.class.php

    从织梦DeDeCMS中提取的zip压缩文件操作类,包含zip文件压缩、解压缩、添加文件到压缩包中等多个实用的函数,注释详细方便使用。 下载: dedecms中提取的zip压缩文件操作类zip.class.php 包含的函数和简单的使用方法: 1.函数get_List($zip_name) ,函数作用

  2. php木马经常用到的eval()函数

    eval() 函数可将字符串转换为代码执行,并返回一个或多个值. 如果eval函数在执行时遇到错误,则抛出异常给调用者. 类似的函数是loadcode ,loadcode并不立即执行代码,而是返回一个函数对象. 并且loadcode支持路径参数,eval并不支持. eval并不支持代码中的retur

  3. 使用phpQuery简单抓取百度搜索结果的代码

    使用phpQuery制作了一个简单的抓取百度搜索结果的代码。 代码如下: 复制代码 代码如下: style body {font-family: arial;} a em {text-decoration: underline;} em {font-style: normal;color: #C00;} /style ?php $kw = empty($_GET[kw])?text:$_GET[kw];

  4. PHP在线清除文件BOM工具

    在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。 下面医疗模板库为大家提供一个PHP在

  5. 超简单的php在线解压zip文件代码

    超简单的php在线解压zip文件代码 代码如下: unzip.php 复制代码 代码如下: ?php set_time_limit(0); $zip = new ZipArchive(); if($zip-open(a.zip)===true){ $zip-extractTo(./); echo Ok; }else{ echo Failed; } ? 使用方法,讲代码保存为unzip.php文件传

随机推荐

  1. dedecms中提取的zip压缩文件操作类zip.class.php

    从织梦DeDeCMS中提取的zip压缩文件操作类,包含zip文件压缩、解压缩、添加文件到压缩包中等多个实用的函数,注释详细方便使用。 下载: dedecms中提取的zip压缩文件操作类zip.class.php 包含的函数和简单的使用方法: 1.函数get_List($zip_name) ,函数作用

  2. php木马经常用到的eval()函数

    eval() 函数可将字符串转换为代码执行,并返回一个或多个值. 如果eval函数在执行时遇到错误,则抛出异常给调用者. 类似的函数是loadcode ,loadcode并不立即执行代码,而是返回一个函数对象. 并且loadcode支持路径参数,eval并不支持. eval并不支持代码中的retur

  3. 使用phpQuery简单抓取百度搜索结果的代码

    使用phpQuery制作了一个简单的抓取百度搜索结果的代码。 代码如下: 复制代码 代码如下: style body {font-family: arial;} a em {text-decoration: underline;} em {font-style: normal;color: #C00;} /style ?php $kw = empty($_GET[kw])?text:$_GET[kw];

  4. PHP在线清除文件BOM工具

    在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。 下面医疗模板库为大家提供一个PHP在

  5. 超简单的php在线解压zip文件代码

    超简单的php在线解压zip文件代码 代码如下: unzip.php 复制代码 代码如下: ?php set_time_limit(0); $zip = new ZipArchive(); if($zip-open(a.zip)===true){ $zip-extractTo(./); echo Ok; }else{ echo Failed; } ? 使用方法,讲代码保存为unzip.php文件传