ini_set('memory_limit', '-1');/*检测并清除BOM*/$basedir = dirname(__FILE__);//扫描当前文件路径 可自动设置$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")."";}else{$dirname = $basedir."/".$file;checkdir($dirname);}}}//end whileclosedir($dh);}//end if($dh}//end functionfunction checkBOM($filename){global $auto; // bbs.it-home.org$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 "BOM found, automatically removed.";}else{return ("BOM found.");}}else return ("BOM Not Found.");}//end functionfunction rewrite($filename, $data){$filenum = fopen($filename, "w");flock($filenum, LOCK_EX);fwrite($filenum, $data);fclose($filenum);}//end function复制代码
