欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

去掉utf8 bom

程序员文章站 2022-05-25 22:53:40
...
<?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);   

}   

?>  

  

转载于:https://www.cnblogs.com/zhexiao/archive/2012/03/30/2425867.html