首页 > 运营 > 建站经验 > 正文

PHP批量去除BOM头代码分享

2019-11-02 15:33:01
字体:
来源:转载
供稿:网友

<?php

/**

* 去除bom头信息

*/

header("Content-Type:text/html; charset=utf-8");

$auto = 1;

checkdir("D:/wamp/www/sales");

function checkdir($basedir){

if ($dh = opendir($basedir)) {

while (($file = readdir($dh)) !== false) {

if ($file != '.' && $file != '..'){

if (!is_dir($basedir."/".$file)) {

echo "文件名称: $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并且已自动删除</font>");

} else {

return ("<font color=red>发现BOM</font>");

}

}

else return ("没有发现BOM");

}

function rewrite ($filename, $data) {

$filenum = fopen($filename, "w");

flock($filenum, LOCK_EX);

fwrite($filenum, $data);

fclose($filenum);

}

?>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表