欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

UTF-8文件BOM信息自動檢測和自動清除源碼

  發(fā)布時間:2020-02-17 18:41:56   作者:佚名   我要評論
BOM信息是文件開頭的一串隱藏的字符,用于讓某些編輯器識別這是個UTF-8編碼的文件,也編輯器自動加上的這個會導致頁面頭部會出現(xiàn)一個空白行;如果是織夢的程序也會引起驗證碼不顯示等問題

BOM信息是文件開頭的一串隱藏的字符,用于讓某些編輯器識別這是個UTF-8編碼的文件。

特別是當你用記事本修改網(wǎng)頁文件或者PHP文件時,會產(chǎn)生BOM信息,通過審查元素會在body開頭處發(fā)現(xiàn)一個可見的控制符&#65279,導致頁面頭部會出現(xiàn)一個空白行;如果是織夢的程序也會引起驗證碼不顯示等問題。

BOM自動檢測和自動清除工具

https://pan.baidu.com/s/1tztJaZvrDpkZVz9vdHLSIg

源碼

<?php
/**
 * bom.php
 *
 * @author		dedehtml  
 * @license		http://www.dedehtml.com
 * @lastmodify	2018-10-10
 * @description	這里代碼為PHP方式去除當前目錄及子目錄所有文件BOM信息,只要將此代碼文件放到根目錄下,然后瀏覽器運行訪問就可以了
 * @demo		http://www.dedehtml.com/bom.php
 */
if (isset($_GET['dir'])) {
  $basedir = $_GET['dir'];
} else {
  $basedir = '.';
}

$auto = 1;
checkdir($basedir);
 
function checkdir($basedir)
{
  if ($dh = opendir($basedir)) {
    while (($file = readdir($dh)) !== false) {
      if ($file != '.' && $file != '..') {
        if (!is_dir($basedir . "/" . $file)) {
          echo "filename: $basedir/$file " . checkBOM("$basedir/$file") . " <br>";
        } else {
          $dirname = $basedir . "/" . $file;
          checkdir($dirname);
        }
      }
    }
    closedir($dh);
  }
}
function checkBOM($filename)
{
  global $auto;
  $contents  = file_get_contents($filename);
  $charset[1] = substr($contents, 0, 1);
  $charset[2] = substr($contents, 1, 1);
  $charset[3] = substr($contents, 2, 1);
  if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
    if ($auto == 1) {
      $rest = substr($contents, 3);
      rewrite($filename, $rest);
      return ("<font color='red'>BOM found, automatically removed.</font>");
    } else {
      return ("<font color='red'>BOM found.</font>");
    }
  } else
    return ("BOM Not Found.");
}
 
function rewrite($filename, $data)
{
  $filenum = fopen($filename, "w");
  flock($filenum, LOCK_EX);
  fwrite($filenum, $data);
  fclose($filenum);
}

使用說明

下載壓縮包,解壓,把bom.php文件放到網(wǎng)站根目錄

瀏覽器上打開 http://域名/bom.php

打開后等待幾十秒,讓文件執(zhí)行自動清楚文件的bom操作,有問題的文件會有紅色文字提示,文件會自動處理好。

執(zhí)行完后,刪除bom.php防止被別人利用,織夢的程序重新生成整站
 

還有一種情況是&#65279不是在body下面,而是在其他代碼下面的

那就要檢查當前模板代碼開始的地方是不是多寫了其他東西,把多余的東西刪除即可。

相關文章

最新評論