php導出excel的亂碼問題,導出excel中文亂碼

本文目錄一覽:

php 資料庫 導出excel 的時候 導出成功 但是卻是亂碼 請問怎麼解決?

你指定的PHPExcel生成的是xls格式的文件。是一種電子表格格式,這種格式一般是用excel打開處理的。直接用文本方式顯示就是亂碼的。但為什麼是直接輸出這些亂而不是下載呢?是因為你沒有給輸出指定頭信息告訴瀏覽器輸出的內容不是直接顯示而是供下載的,瀏覽器所以瀏覽器也不懂,它只好老老實實給輸出來。你試著在上面那段代碼前加上如下內容:

header(“Cache-Control: public”);

header(“Pragma: public”);

header(“Content-Type: application/force-download”);

header(“Content-Type: application/octet-stream”);

header(“Content-Type:application/download”);

header(“Content-type:application/vnd.ms-excel”);

header(“Content-Disposition:attachment;filename=你自己指定或生成文件名.xls”);

header(“Cache-Control: must-revalidate, post-check=0, pre-check=0”);

php導出excel 亂碼,因為使用phpexcel內存不足的原因

如果資料庫存儲的格式是utf-8.

數據輸出時的格式也是utf-8。

php輸出數據時是utf-8 的無BOM格式。

但是在excel,或是csv輸出數據時都是要帶上bom格式的數據。在excel格式的文檔中亂碼就需要在輸出的最頂端加上 chr(0xEF).chr(0xBB).chr(0xBF)(BoM格式)就可以解決亂碼問題。

php 導出Excel亂碼 大神幫忙指路,急急急!!!!!!

?php

$DB_Server = “localhost”;

$DB_Username = “root”;

$DB_Password = “3721”;

$DB_DBName = “wangshang”;

$DB_TBLName = “ws_info”;

$savename = date(“YmjHis”);

$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die(“Couldn’t connect.”);

mysql_query(“Set Names gb2312”); $file_type = “vnd.ms-excel”;

$file_ending = “xls”;

header(“Content-Type: application/$file_type;charset=big5”);

header(“Content-Disposition: attachment; filename=”.$savename.”.$file_ending”);

//header(“Pragma: no-cache”);

$now_date = date(“Y-m-j H:i:s”);

$title = “資料庫名:$DB_DBName,數據表:$DB_TBLName,備份日期:$now_date”;

$time=’1303776000′;

echo date(“Y-m-d”,$time);

$sql = “Select ws_type,info2,info1,tel,mobile,userid from $DB_TBLName where cityid=’7′ and addtime'”.$time.”‘and ws_type=’2′”;

echo $sql;

exit;

$ALT_Db = @mysql_select_db($DB_DBName, $Connect) or die(“Couldn’t select database”);

$result = @mysql_query($sql,$Connect) or die(mysql_error());

echo(“$title\n”);

$sep = “\t”;

for ($i = 0; $i mysql_num_fields($result); $i++){

echo mysql_field_name($result,$i).”\t”;

}

print(“\n”);

$i = 0;

while($row = mysql_fetch_row($result)){

$schema_insert = “”;

for($j=0; $jmysql_num_fields($result);$j++){

if(!isset($row[$j]))

$schema_insert .= “NULL”.$sep;

elseif ($row[$j] != “”)

$schema_insert .= “$row[$j]”.$sep;

else

$schema_insert .= “”.$sep;

}

$schema_insert = str_replace($sep.”$”, “”, $schema_insert);

$schema_insert .= “\t”;

print(trim($schema_insert));

print “\n”;

$i++;

}

return (true);

?

直接用

php導出到excel出亂碼時怎麼回事?

header 定義編碼時要存成和定義編碼一樣的文件編碼模式,

header不定義編碼時存為默認的ansi(gbk)模式

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/247299.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:20
下一篇 2024-12-12 13:20

相關推薦

  • Python官網中文版:解決你的編程問題

    Python是一種高級編程語言,它可以用於Web開發、科學計算、人工智慧等領域。Python官網中文版提供了全面的資源和教程,可以幫助你入門學習和進一步提高編程技能。 一、Pyth…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 如何解決WPS保存提示會導致宏不可用的問題

    如果您使用過WPS,可能會碰到在保存的時候提示「文件中含有宏,保存將導致宏不可用」的問題。這個問題是因為WPS在默認情況下不允許保存帶有宏的文件,為了解決這個問題,本篇文章將從多個…

    編程 2025-04-29
  • Python zipfile解壓文件亂碼處理

    本文主要介紹如何在Python中使用zipfile進行文件解壓的處理,同時詳細討論在解壓文件時可能出現的亂碼問題的各種解決辦法。 一、zipfile解壓文件亂碼問題的根本原因 在P…

    編程 2025-04-29
  • Python讀取中文

    Python是一種高級編程語言,被廣泛地應用於各種領域中。而處理中文數據也是其中重要的一部分。本文將介紹在Python中如何讀取中文,為大家提供指導和幫助。 一、讀取中文文件 在P…

    編程 2025-04-29
  • Java Thread.start() 執行幾次的相關問題

    Java多線程編程作為Java開發中的重要內容,自然會有很多相關問題。在本篇文章中,我們將以Java Thread.start() 執行幾次為中心,為您介紹這方面的問題及其解決方案…

    編程 2025-04-29
  • jQuery Datatable分頁中文

    jQuery Datatable是一個非常流行的數據表插件,它可以幫助您快速地在頁面上創建搜索、過濾、排序和分頁的數據表格。不過,它的默認設置是英文的,今天我們就來探討如何將jQu…

    編程 2025-04-29
  • Python爬蟲亂碼問題

    在網路爬蟲中,經常會遇到中文亂碼問題。雖然Python自帶了編碼轉換功能,但有時候會出現一些比較奇怪的情況。本文章將從多個方面對Python爬蟲亂碼問題進行詳細的闡述,並給出對應的…

    編程 2025-04-29
  • Python計算中文字元個數

    本文將從多個方面對Python計算中文字元個數進行詳細的闡述,包括字元串長度計算、正則表達式統計和模塊使用方法等內容。 一、字元串長度計算 在Python中,計算字元串長度是非常容…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29

發表回復

登錄後才能評論