If you need to remove the BOM, put the tool.php file in the attachment into the target directory, and then access tool.php in the browser!
Copy code The code is as follows:
//This file is used to quickly test UTF8 encoding Whether the file has a BOM added and can be automatically removed
$basedir="."; //Modify the directory that needs to be detected for this behavior. The dot indicates the current directory
$auto=1; //Whether it can be automatically removed Discovered BOM information. 1 means yes, 0 means no.
//No need to change the following
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($ file!='.' && $file!='..' && !is_dir($basedir."/".$file))
echo "filename: $file ".checkBOM("$basedir/$file" )."
";
}
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.");
} else {
return ("BOM found.");
}
}else
return ("BOM Not Found.");
}
function rewrite ($filename, $data) {
$filenum=fopen($filename," w");
flock($filenum,LOCK_EX);
fwrite($filenum,$data);
fclose($filenum);
}
?>
PHP batch removes BOM code from PHP files
Copy the code The code is as follows:
if (isset($_GET['dir'])){ //Set the file directory
$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")."
";
}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 ("
BOM found, automatically removed._http://www.joyphper.net");
} else {
return ("
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);
}
? >
http://www.bkjia.com/PHPjc/325245.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/325245.htmlTechArticleIf you need to remove the BOM, put the tool.php file in the attachment into the target directory, and then access tool in the browser .php is enough! Copy the code. The code is as follows: ?php //This file is used to quickly test UTF8 encoding...