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

PHP 下載文件時自動添加bom頭的方法實例

 更新時間:2014年01月10日 15:44:03   作者:  
這篇文章主要介紹了PHP 下載文件時自動添加bom頭的方法實例,有需要的朋友可以參考一下

首先弄清楚,什么是bom頭?在Windows下用記事本之類的程序?qū)⑽谋疚募4鏋閁TF-8格式時,記事本會在文件頭前面加上幾個不可見的字符(EF BB BF),就是所謂的BOM(Byte order Mark)。
不僅限于 記事本保存的文件,只要在文件的開口包含了EF BB BF 幾個不可見的字符(十六進制應(yīng)該是是xEFxBBxBF,用二進制編輯文件可見)。這像是一個約定俗成的東西,當(dāng)系統(tǒng)看到這玩意的時候,就會覺得你這個文件是UTF-8編碼的。

如果你的接口是UTF-8的,你需要強制下載一個文件,比如csv.excel在默認(rèn)情況(中文背景)下,認(rèn)為csv是GB編碼的,所以如果米有bom頭,那你給用戶呈現(xiàn)的文件,可能就是亂碼了。

怎么加bom頭呢?
在輸出文件之前加上bom頭就可以了:

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

                // 文件名
  $filename = "www.fzitv.net.net.csv";

  header('Expires: ' . gmdate('D, d M Y H:i:s', $_SERVER['REQUEST_TIME'] + 10) . ' GMT');
  header('Cache-Control: max-age=10');
  //header('Content-Type: application/vnd.ms-excel; charset=utf-8');
  header('Content-Type: text/csv; charset=utf-8');
  header("Content-Disposition: attachment; filename={$filename}");

  // 如果結(jié)果中有提示信息,則把第一行輸出改為提示信息文字
  $out = "xEFxBBxBF";// 加上bom頭,系統(tǒng)自動默認(rèn)為UTF-8編碼
  if (!empty($extra['notice'])) {
   $out .= "{$extra['notice']}rn";
  }

  // 輸出
  foreach ($table as $row) {
   $out .= implode(",", $row) . "rn";
  }

  /* if (mb_detect_encoding()($out) == 'UTF-8') {
   $out = iconv("UTF-8//IGNORE", "GBK", $out);
  } */
  echo $out;

相關(guān)文章

  • 淺談PHP正則表達式中修飾符/i, /is, /s, /isU

    淺談PHP正則表達式中修飾符/i, /is, /s, /isU

    我們在PHP正則表達式的學(xué)習(xí)中會碰到修飾符,那么關(guān)于PHP正則表達式修飾符的理解以及使用我們需要注意什么呢?那么我們來具體的看看它的概念以及相關(guān)內(nèi)容。
    2014-10-10
  • 一些關(guān)于PHP的知識

    一些關(guān)于PHP的知識

    一些關(guān)于PHP的知識...
    2006-11-11
  • php進程通信之共享內(nèi)存詳細講解

    php進程通信之共享內(nèi)存詳細講解

    這篇文章主要介紹了php進程通信之共享內(nèi)存,共享內(nèi)存是一種最為高效的進程間通信(IPC)方式,進程可以直接讀寫內(nèi)存,而不需要任何數(shù)據(jù)的拷貝
    2022-09-09
  • 對比PHP對MySQL的緩沖查詢和無緩沖查詢

    對比PHP對MySQL的緩沖查詢和無緩沖查詢

    PHP中使用函數(shù)查詢MySQL中的數(shù)據(jù)默認(rèn)是以緩沖模式,除此之外MySQL程序還支持一種無緩沖模式,本文我們將來對比PHP對MySQL的緩沖查詢和無緩沖查詢:
    2016-07-07
  • PHP利用str_replace防注入的方法

    PHP利用str_replace防注入的方法

    str_replace()函數(shù)的使用就是用來替換指定字符了,可以利用這一點來過濾敏感字符以太到防注入的效果
    2013-11-11
  • PHP簡單實現(xiàn)文本計數(shù)器的方法

    PHP簡單實現(xiàn)文本計數(shù)器的方法

    這篇文章主要介紹了PHP簡單實現(xiàn)文本計數(shù)器的方法,涉及PHP針對文本文件的簡單判斷,讀取及寫入等操作技巧,需要的朋友可以參考下
    2016-04-04
  • PHP靜態(tài)新聞列表自動生成代碼

    PHP靜態(tài)新聞列表自動生成代碼

    PHP靜態(tài)新聞列表自動生成代碼...
    2007-06-06
  • PHP安全防范技巧分享

    PHP安全防范技巧分享

    這里簡單介紹一些基本編程要點, 相對系統(tǒng)安全來說,php安全防范更多要求編程人員對用戶輸入的各種參數(shù)能更細心.
    2011-11-11
  • php實現(xiàn)插入排序

    php實現(xiàn)插入排序

    本文給大家分享的是使用php實現(xiàn)插入排序的方法,十分的簡單實用,有需要的小伙伴可以參考下。
    2015-03-03
  • php事件驅(qū)動化設(shè)計詳解

    php事件驅(qū)動化設(shè)計詳解

    這篇文章主要介紹了php事件驅(qū)動化設(shè)計,結(jié)合實例形式較為詳細的分析了php事件驅(qū)動化所涉及的信號量、共享內(nèi)存與進程間通信相關(guān)概念與操作技巧,需要的朋友可以參考下
    2016-11-11

最新評論

泾源县| 余江县| 林州市| 盘山县| 金寨县| 中山市| 扎囊县| 玛纳斯县| 盘锦市| 潮州市| 连平县| 崇左市| 汉源县| 尉氏县| 育儿| 蕉岭县| 上栗县| 明星| 峨眉山市| 庐江县| 高雄市| 平邑县| 湘西| 中牟县| 云林县| 桃源县| 玛多县| 常州市| 宜都市| 昭平县| 宝坻区| 承德县| 兴化市| 原平市| 沽源县| 四平市| 土默特右旗| 福安市| 嵊州市| 靖宇县| 哈巴河县|