肥宅自学平台_人人成为技术开发者

肥宅人只等待您,联系我们吧,曾经的巅峰是否能回来?我们正在用心服务!

PHP如何检测并清除文件开头的BOM信息?

 更新时间:2024-04-24 16:33:58   作者:肥宅-季波   我要评论(0)  

         用于检测并清除掉文件开头的BOM信息
  1. <?php
  2. ini_set('memory_limit', '-1');
  3. /*检测并清除BOM*/
  4. $basedir = dirname(__FILE__); //扫描当前文件路径 可自动设置
  5. $auto = 1;
  6. checkdir($basedir);
  7. function checkdir($basedir) {
  8.     if ($dh = opendir($basedir)) {
  9.         while (($file = readdir($dh)) !== false) {
  10.             if ($file != '.' && $file != '..') {
  11.                 if (!is_dir($basedir . "/" . $file)) {
  12.                     echo "filename: $basedir/$file " . checkBOM("$basedir/$file") . " <br>";
  13.                 } else {
  14.                     $dirname = $basedir . "/" . $file;
  15.                     checkdir($dirname);
  16.                 }
  17.             }
  18.         } //end while
  19.         closedir($dh);
  20.     } //end if($dh
  21.    
  22. } //end function
  23. function checkBOM($filename) {
  24.     global $auto; // www.dmaku.com
  25.     $contents = file_get_contents($filename);
  26.     $charset[1] = substr($contents, 0, 1);
  27.     $charset[2] = substr($contents, 1, 1);
  28.     $charset[3] = substr($contents, 2, 1);
  29.     if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
  30.         if ($auto == 1) {
  31.             $rest = substr($contents, 3);
  32.             rewrite($filename, $rest);
  33.             return "<font color=red>BOM found, automatically removed.</font>";
  34.         } else {
  35.             return ("<font color=red>BOM found.</font>");
  36.         }
  37.     } else return ("BOM Not Found.");
  38. } //end function
  39. function rewrite($filename, $data) {
  40.     $filenum = fopen($filename, "w");
  41.     flock($filenum, LOCK_EX);
  42.     fwrite($filenum, $data);
  43.     fclose($filenum);
  44. } //end function
"小礼物走一走,来肥宅自学平台支持我"
评论区

评论

共条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~
客服中心在线客服
全心全意为平台用户服务
Copyright © 2017-2023 自学平台网站地图:去查看>
  • 肥宅人自己的自学平台
  • 人人都能成为平台讲师
  • 贡献你的力量壮大肥宅自学平台
  • 将自己的能力变现
  • 实现人生的第二职业
网址收藏平台安卓APP
微信公众号微信公众号

本站部分图片或者资源来自程序自动采集或卖家(商家)发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

肥宅自学教程网是一个主打IT视频教程、自媒体运行、摄影剪辑等内容的资源学习交流平台。