ホームページ >バックエンド開発 >PHPチュートリアル >php bom 削除ツール、bom をバッチで削除するための php コード
php bom 削除ツール、php bom コードのバッチ削除
ファイル bom コードの php バッチ削除機能は、フォルダーのバッチ削除をサポートします。具体的な php ファイルのコードは次のとおりです。
<span style="font-size: 14px;"><?php</span><br />header('content-Type: text/html; charset=utf-8');<br />$auto=1;/*设置为1标示检测BOM并去除,设置为0标示只进行BOM检测,不去除*/<br />$basedir='.';<br />$loop=true;//www.phpernote.com<br />echo '当前查找的目录为:'.$basedir.'当前的设置是:';<br />echo '(1)',$loop?'检查当前目录以及当前目录的子目录':'只针对当前目录进行检测';<br />echo '(2)',$auto?'检测文件BOM同时去除检测到BOM文件的BOM<br />':'只检测文件BOM不执行去除BOM操作<br />';<br /><br />checkdir($basedir,$loop);<br />function checkdir($basedir='',$loop=true){<br /> $basedir=empty($basedir)?'.':$basedir;<br /> if($dh=opendir($basedir)){<br /> while (($file=readdir($dh))!==false){<br /> if($file!='.'&&$file!='..'){<br /> if(!is_dir($basedir.'/'.$file)){<br /> echo '文件: '.$basedir.'/'.$file .checkBOM($basedir.'/'.$file).' <br>';<br /> }else{<br /> if(!$loop) continue;<br /> $dirname=$basedir.'/'.$file;<br /> checkdir($dirname);<br /> }<br /> }<br /> }<br /> closedir($dh);<br /> }<br />}<br />function checkBOM($filename){<br /> global $auto;<br /> $contents=file_get_contents($filename);<br /> $charset[1]=substr($contents,0,1);<br /> $charset[2]=substr($contents,1,1);<br /> $charset[3]=substr($contents,2,1);<br /> if(ord($charset[1])==239&&ord($charset[2])==187&&ord($charset[3])==191){<br /> if($auto==1){<br /> $rest=substr($contents,3);<br /> rewrite($filename,$rest);<br /> return (' <font color=red>找到BOM并已自动去除</font>');<br /> }else{<br /> return (' <font color=red>找到BOM</font>');<br /> }<br /> }else{<br /> return (' 没有找到BOM');<br /> }<br />}<br />function rewrite($filename,$data){<br /> $filenum=fopen($filename,'w');<br /> flock($filenum,LOCK_EX);<br /> fwrite($filenum,$data);<br /> fclose($filenum);<br /><p>}<span style="font-size: 14px;">
上記のコードを拡張子 php を付けてファイルとして保存し、配置します。 BOM ディレクトリを削除する必要があるファイルで php ファイルを実行すると、BOM がチェックされ、ディレクトリ内のファイルとそのディレクトリのすべてのサブディレクトリが削除されます。実行結果のページは次のとおりです: