频道栏目
首页 > 程序开发 > Web开发 > php > 正文
检查php文件中是否含有bom的php文件
2012-05-23 11:40:24           
收藏   我要投稿
<?php
/*检测并清除BOM*/ 
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); 
                } 
            } 
        }//end while 
    closedir($dh); 
    }//end if($dh 
}//end function 
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>"); 
        } 
    }   www.2cto.com
    else return ("BOM Not Found."); 
}//end function 
function rewrite($filename, $data){ 
    $filenum = fopen($filename, "w"); 
    flock($filenum, LOCK_EX); 
    fwrite($filenum, $data); 
    fclose($filenum); 
}//end function 
?>
 
 
点击复制链接 与好友分享!回本站首页
相关TAG标签 文件
上一篇:[BOM]PHP程序的UTF8神秘编码问题之解
下一篇:php-Arrays函数-array_rand-从数组中随机取出一个或多个单元
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站