ホームページ >バックエンド開発 >PHPチュートリアル >プロジェクトファイルからBOMヘッダーをバッチで削除するPHPメソッド
この記事では主に、PHP でプロジェクト ファイルから BOM ヘッダーを一括で削除する方法を紹介します。これには一定の参考値があります。今、共有します。必要な友人はそれを参照できます。
1 <?php 2 if (isset($_GET['dir'])) { //设置文件目录 3 $basedir = $_GET['dir']; 4 } else { 5 $basedir = '.'; 6 } 7 8 $auto = 1; 9 checkdir($basedir); 10 11 function checkdir($basedir) 12 { 13 if ($dh = opendir($basedir)) { 14 while (($file = readdir($dh)) !== false) { 15 if ($file != '.' && $file != '..') { 16 if (!is_dir($basedir . "/" . $file)) { 17 echo "filename: $basedir/$file " . checkBOM("$basedir/$file") . " <br>"; 18 } else { 19 $dirname = $basedir . "/" . $file; 20 checkdir($dirname); 21 } 22 } 23 } 24 closedir($dh); 25 } 26 } 27 28 function checkBOM($filename) 29 { 30 global $auto; 31 $contents = file_get_contents($filename); 32 $charset[1] = substr($contents, 0, 1); 33 $charset[2] = substr($contents, 1, 1); 34 $charset[3] = substr($contents, 2, 1); 35 if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { 36 if ($auto == 1) { 37 $rest = substr($contents, 3); 38 rewrite($filename, $rest); 39 return ("<font color='red'>BOM found, automatically removed.</font>"); 40 } else { 41 return ("<font color='red'>BOM found.</font>"); 42 } 43 } else 44 return ("BOM Not Found."); 45 } 46 47 function rewrite($filename, $data) 48 { 49 $filenum = fopen($filename, "w"); 50 flock($filenum, LOCK_EX); 51 fwrite($filenum, $data); 52 fclose($filenum); 53 } 54 55 ?>
The上記は記事の全文です。皆様の学習に役立つことを願っています。その他の関連コンテンツについては、PHP 中国語 Web サイトに注目してください。
関連する推奨事項:
PHP Excel から MySQL データベースにデータをインポートする方法
strtr 関数についてPHP での奇妙な動作についての説明
以上がプロジェクトファイルからBOMヘッダーをバッチで削除するPHPメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。