久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      php生成txt亂碼

      php生成txt亂碼

      前言

      相信很多人在使用PHP的過程中都遇到過生成文件亂碼的情況,不論是使用fwrite還是file_put_contents寫入??赡苣銜葒L試從編碼入手嘗試解決,但最終的結果往往是不理想的,盡管我們都將其轉換為了UTF-8編碼了…

      那么究其根本原因是什么呢?

      一句話:缺少頭部BOM(當然,這里指的肯定不是Js的Bom)

      BOM

      既然提到了BOM,那么可能有的同學不太了解這個家伙,這里我簡單說一下,老鳥可以跳過。在Windows下用記事本之類的程序將文本文件保存為UTF-8格式時,記事本會在文件頭前面加上幾個不可見的字符(EF BB BF),就是所謂的BOM(Byte order Mark)。

      不僅限于 記事本保存的文件,只要在文件的開口包含了“EF BB BF” 幾個不可見的字符(十六進制應該是是xEFxBBxBF,用二進制編輯文件可見)。這像是一個約定俗成的東西,當系統(tǒng)看到這玩意的時候,就會覺得你這個文件是UTF-8編碼的。

      這就是為什么當文件沒有BOM時,你給用戶呈現(xiàn)的文件就可能是亂碼的原因了。

      PS : 其實你可以將BOM理解成HTML中的charset屬性和XML中的encoding屬性,就是起一個標識作用。

      方案

      那么如何在PHP中輸出BOM呢?

      答案是在所有內(nèi)容輸出之前輸出:

      print(chr(0xEF).chr(0xBB).chr(0xBF));

      當然,如果你是在生成文件,可能是下面兩種:

      fwrite($file, chr(0xEF).chr(0xBB).chr(0xBF));  file_put_contents($file, chr(0xEF).chr(0xBB).chr(0xBF));

      推薦教程:PHP視頻教程

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號