• 技术文章 >后端开发 >php教程

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

    不言不言2018-07-04 14:21:16原创662
    这篇文章主要介绍了关于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 ?>

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

    相关推荐:

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

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

    以上就是php 批量去除项目文件bom头的方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 批量去除
    上一篇:php 的http_build_query stream_context_create post请求 下一篇:php源码之实现单入口MVC结构的方法
    大前端线上培训班

    相关文章推荐

    • 带你分清类中的构造函数与析构函数• 怎样去搞定PHP类的继承?(总结分享)• 你知道这个PHP命令行选项解析库(pflag)吗?• PHP中如何才能将时间日期格式化?怎么计算时间差?• 一定搞得懂PHP中如何添加图片水印

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网