最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php寫入txt亂碼的解決方法

 更新時(shí)間:2019年09月17日 14:50:18   投稿:laozhang  
在本篇文章里小編給大家分享的是關(guān)于php寫入txt亂碼的知識(shí)點(diǎn)以及解決方法,有需要的朋友們參考下。

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

那么究其根本原因是什么呢?就是缺少頭部BOM(當(dāng)然,這里指的肯定不是Js的Bom)。

BOM

既然提到了BOM,那么可能有的同學(xué)不太了解這個(gè)家伙,這里我簡單說一下,老鳥可以跳過。在Windows下用記事本之類的程序?qū)⑽谋疚募4鏋閁TF-8格式時(shí),記事本會(huì)在文件頭前面加上幾個(gè)不可見的字符(EF BB BF),就是所謂的BOM(Byte order Mark)。

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

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

PS : 其實(shí)你可以將BOM理解成HTML中的charset屬性和XML中的encoding屬性,就是起一個(gè)標(biāo)識(shí)作用。

解決辦法

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

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

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

當(dāng)然,如果你是在生成文件,可能是下面兩種:

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

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

以上就是php寫入txt亂碼的詳細(xì)內(nèi)容,感謝大家對腳本之家的支持。

相關(guān)文章

  • php判斷IP地址是否在多個(gè)IP段內(nèi)

    php判斷IP地址是否在多個(gè)IP段內(nèi)

    這篇文章主要為大家詳細(xì)介紹了php判斷IP地址是否在多個(gè)IP段內(nèi),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • php自動(dòng)適應(yīng)范圍的分頁代碼

    php自動(dòng)適應(yīng)范圍的分頁代碼

    分享一個(gè)自己寫的“頁碼自動(dòng)適應(yīng)范圍”的分頁代碼
    2008-08-08
  • PHP中source #N問題的解決方法

    PHP中source #N問題的解決方法

    最近寫PHP里面的查詢經(jīng)常會(huì)遇到source #4或者source#5這樣的問題,下面有個(gè)不錯(cuò)的解決方法,大家可以嘗試下
    2014-01-01
  • PHP終止腳本執(zhí)行的實(shí)例代碼

    PHP終止腳本執(zhí)行的實(shí)例代碼

    在本篇文章里小編給大家整理的是關(guān)于PHP終止腳本執(zhí)行的實(shí)例代碼,需要的朋友們可以學(xué)習(xí)參考下。
    2020-03-03
  • 如何用RabbitMQ和Swoole實(shí)現(xiàn)一個(gè)異步任務(wù)系統(tǒng)

    如何用RabbitMQ和Swoole實(shí)現(xiàn)一個(gè)異步任務(wù)系統(tǒng)

    從最開始的使用redis實(shí)現(xiàn)的單進(jìn)程消費(fèi)的異步任務(wù)系統(tǒng)到加入swoole的多進(jìn)程消費(fèi)模式,現(xiàn)在,我們的異步任務(wù)系統(tǒng)終于又能邁進(jìn)一步。這回基于RabbitMQ的異步任務(wù)系統(tǒng)設(shè)計(jì)的的更加完善,包括多進(jìn)程消費(fèi),異常重試等。
    2021-05-05
  • PHP 開發(fā)環(huán)境配置(Zend Studio)

    PHP 開發(fā)環(huán)境配置(Zend Studio)

    運(yùn)行Zend Studio安裝文件(ZendStudio-7.1.2.exe) 安裝選項(xiàng)請按照圖片中我的選擇。
    2010-04-04
  • PHP7 新特性詳細(xì)介紹

    PHP7 新特性詳細(xì)介紹

    本文主要介紹PHP7 新特性的資料,這里整理了詳細(xì)的資料及簡單實(shí)現(xiàn)代碼幫助大家學(xué)習(xí)參考新特性的知識(shí),有興趣的朋友可以參考下
    2016-09-09
  • 實(shí)例解析php的數(shù)據(jù)類型

    實(shí)例解析php的數(shù)據(jù)類型

    在本篇文章中我們給大家分享了關(guān)于php的數(shù)據(jù)類型相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們參考學(xué)習(xí)下。
    2018-10-10
  • PHP使用觀察者模式處理異常信息的方法詳解

    PHP使用觀察者模式處理異常信息的方法詳解

    這篇文章主要介紹了PHP使用觀察者模式處理異常信息的方法,結(jié)合實(shí)例形式詳細(xì)分析了php觀察者模式處理異常信息相關(guān)原理、實(shí)現(xiàn)方法及操作注意事項(xiàng),需要的朋友可以參考下
    2019-09-09
  • php使用socket調(diào)用http和smtp協(xié)議實(shí)例小結(jié)

    php使用socket調(diào)用http和smtp協(xié)議實(shí)例小結(jié)

    這篇文章主要介紹了php使用socket調(diào)用http和smtp協(xié)議,結(jié)合實(shí)例形式總結(jié)分析了php使用socket發(fā)送http請求、post請求、SMTP請求、郵件發(fā)送等相關(guān)操作技巧,需要的朋友可以參考下
    2019-07-07

最新評論

府谷县| 通化市| 洮南市| 岫岩| 达拉特旗| 汾西县| 浑源县| 桂东县| 湖南省| 抚宁县| 剑川县| 齐齐哈尔市| 临漳县| 凤阳县| 绥宁县| 瑞安市| 雅安市| 华阴市| 阿克| 涞水县| 汉川市| 曲水县| 利津县| 田阳县| 北流市| 德惠市| 定远县| 泸溪县| 福清市| 高邑县| 桂阳县| 垣曲县| 永昌县| 中方县| 谢通门县| 辽宁省| 丰县| 玉环县| 澎湖县| 武宁县| 馆陶县|