龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

删除utf-8 BOM

时间:2014-07-22 14:52来源: 作者: 点击:
分享到:
<无详细内容>
<?php
//查找utf-8 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);
                }
            }
        }
    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>存在,自动删除.</font>");
         } else {
            return("<font color=red>不存在</font>");
         }
   } 
     else return("不存在");
 }
  
 function rewrite($filename, $data) {
     $filenum = fopen($filename, "w");
    flock($filenum, LOCK_EX);
     fwrite($filenum, $data);
     fclose($filenum);
 }
 ?> 
精彩图集

赞助商链接