乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      刪除uft

       亂七九糟 2015-05-20
      當(dāng)我們保存一個(gè)以UTF-8編碼的文件時(shí),會(huì)在文件開始的地方插入三個(gè)不可見的字符(0xEF 0xBB 0xBF,即BOM),而這個(gè)bom頭可能導(dǎo)致一些不必要的問題,下面我整理了一些關(guān)于刪除uft-8文件bom頭信息一些常用方法,有興趣的朋友可進(jìn)入?yún)⒖肌?/div>

      如果您在修改任何PHP文件發(fā)生:

      * 不能登入或者不能登出; * 頁(yè)頂出現(xiàn)一條空白; * 頁(yè)頂出現(xiàn)錯(cuò)誤警告; * 其它不正常的情況。

      bom文件是怎么產(chǎn)生呢?

      window編輯器如果保存為utf8文件就會(huì)幫你加上BOM頭,以告訴其他編輯器以u(píng)tf8來顯示字符
      但是在網(wǎng)頁(yè)上并不需要添加BOM頭識(shí)別,因?yàn)榫W(wǎng)頁(yè)上可以使用 head頭 指定charset=utf8告訴瀏覽器用utf8來解釋.但是你用window自動(dòng)的編輯器,編輯,然后有顯示在網(wǎng)頁(yè)上這樣就會(huì)顯示出0xEF 0xBB 0xBF這3個(gè)字符。
      這樣網(wǎng)頁(yè)上就需要去除0xEF 0xBB 0xBF,可以使用editplus 選擇不帶BOM的編碼,這樣就可以去除了

      bom文件頭信息刪除

      我最常用的方法來處理php文件處理

       代碼如下 復(fù)制代碼

      <?php
      /**
       * 用法:復(fù)制以下代碼至新建的php文件中,將該php文件放置項(xiàng)目目錄,運(yùn)行即可。代碼來源于網(wǎng)絡(luò)。
       * chenwei 注。
       */
      header('content-Type: text/html; charset=utf-8');
      $auto=1;/* 設(shè)置為1標(biāo)示檢測(cè)BOM并去除,設(shè)置為0標(biāo)示只進(jìn)行BOM檢測(cè),不去除 */
      $basedir='.';
      $loop=true;
      echo '當(dāng)前查找的目錄為:'.$basedir.'當(dāng)前的設(shè)置是:';
      echo '(1)',$loop?'檢查當(dāng)前目錄以及當(dāng)前目錄的子目錄':'只針對(duì)當(dāng)前目錄進(jìn)行檢測(cè)';
      echo '(2)',$auto?'檢測(cè)文件BOM同時(shí)去除檢測(cè)到BOM文件的BOM<br />':'只檢測(cè)文件BOM不執(zhí)行去除BOM操作<br />';

      checkdir($basedir,$loop);
      function checkdir($basedir='',$loop=true){
          $basedir=empty($basedir)?'.':$basedir;
          if($dh=opendir($basedir)){
              while (($file=readdir($dh))!==false){
                  if($file!='.'&&$file!='..'){
                      if(!is_dir($basedir.'/'.$file)){
                          echo '文件: '.$basedir.'/'.$file .checkBOM($basedir.'/'.$file).' <br>';
                      }else{
                          if(!$loop) continue;
                          $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并已自動(dòng)去除</font>');
              }else{
                  return (' <font color=red>找到BOM</font>');
              }
          }else{
              return (' 沒有找到BOM');
          }
      }
      function rewrite($filename,$data){
          $filenum=fopen($filename,'w');
          flock($filenum,LOCK_EX);
          fwrite($filenum,$data);
          fclose($filenum);
      }

      利用Dreamweaver 中去除bom方法

      打開Dreamweaver->選擇編輯->首選參數(shù)->新建文檔標(biāo)簽->右邊->"包括Unicode 簽名(BOM)" 前面的對(duì)鉤去掉即可

      刪除uft-8文件bom頭信息的方法


      editplus等編程工具時(shí)UTF-8編碼去掉BOM頭方法

      編輯器調(diào)整為UTF8編碼格式后,保存的文件前面會(huì)多出一串隱藏的字符(也即是BOM),用于編輯器識(shí)別這個(gè)文件是否是以UTF8編碼。一般的文本文件會(huì)忽略這一串隱藏的字符,但對(duì)于PHP等文件會(huì)解析這一串字符,這樣會(huì)導(dǎo)致出錯(cuò)。

      運(yùn)行Editplus,點(diǎn)擊工具,選擇首選項(xiàng),如下圖:

      刪除uft-8文件bom頭信息的方法


      選中文件,UTF-8標(biāo)識(shí)選擇 總是刪除簽名,如下圖:

      刪除uft-8文件bom頭信息的方法

      然后對(duì)PHP文件編輯和保存后的PHP文件就是不帶BOM的了


      linux下查找包含BOM頭的文件和清除BOM頭命令

      查找包含BOM頭的文件,命令如下:

      grep -r -I -l $'^\xEF\xBB\xBF' ./

      這條命令會(huì)查找當(dāng)前目錄及子目錄下所有包含BOM頭的文件,并把文件名在屏幕上輸出。

      但是,刪除BOM頭,網(wǎng)上找到的命令大多不能用,比較常見的命令是:

      grep -r -I -l $'^\xEF\xBB\xBF' /path | xargs sed -i 's/^\xEF\xBB\xBF//;q'
      但這條命令會(huì)把除了首行之外所有的行刪除,所以毫無意義。

      經(jīng)測(cè)試如下命令是可行的:

       find . -type f   -exec  sed -i 's/\xEF\xBB\xBF//' {} \;

      這個(gè)命令會(huì)把當(dāng)前目錄及所有子目錄下的BOM頭刪除掉。


        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多