Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php 批量去除项目文件bom头的方法

php 批量去除项目文件bom头的方法

不言
不言asal
2018-07-04 14:21:161748semak imbas

这篇文章主要介绍了关于php 批量去除项目文件bom头的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

 1 <?php 
 2 if (isset($_GET[&#39;dir&#39;])) { //设置文件目录 
 3     $basedir = $_GET[&#39;dir&#39;]; 
 4 } else { 
 5     $basedir = &#39;.&#39;; 
 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 != &#39;.&#39; && $file != &#39;..&#39;) {
 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=&#39;red&#39;>BOM found, automatically removed.</font>");
 40         } else {
 41             return ("<font color=&#39;red&#39;>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 ?>

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

PHP Excel导入数据到MySQL数据库的方法

关于PHP中strtr函数一些奇怪行为的解释

Atas ialah kandungan terperinci php 批量去除项目文件bom头的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn