首頁 > php教程 > php手册 > 主體

PHP批量去除PHP文件中bom的代码 - jerrylsxu

WBOY
發布: 2016-05-20 13:15:19
原創
1073 人瀏覽過
<?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._<a href=http://www.joyphper.net>http://www.joyphper.net</a></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);    
}    
?>   
登入後複製

  

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!