偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

具體講解PHP導(dǎo)出Excel亂碼的解決方法

開發(fā) 后端
PHP導(dǎo)出Excel亂碼的出現(xiàn)對于新手來說是經(jīng)常會遇到的問題,通常會在定義文件名和填充Excel數(shù)據(jù)這兩個過程中出現(xiàn)這種問題。

我們在運用PHP語言進(jìn)行Excel文件導(dǎo)出時可能會遇到亂碼的問題,PHP導(dǎo)出Excel亂碼具體的解決方法我們在文中做了詳細(xì)的介紹,希望對大家有所幫助。#t#

PHP導(dǎo)出Excel文件時有兩個主要的過程:

1、定義文件名

2、填充Excel數(shù)據(jù)

這兩個過程中可能會出現(xiàn)一些PHP導(dǎo)出Excel亂碼問題,下面我來說一下解決辦法:

解決文件名的PHP導(dǎo)出Excel亂碼:

亂碼原因:客戶使用的中文版Windows系統(tǒng)平臺,而Windows平臺的文件名編碼為gb2312(gbk),而我們網(wǎng)頁編碼為了跟進(jìn)現(xiàn)存潮流一般都采用utf-8(國際化)編碼,這時當(dāng)我們:header("Content-Disposition: inline; filename=\"" . $filename . ".xls\"")時就會出現(xiàn)亂碼,假如你的網(wǎng)頁編碼就是gb2312那就不用考慮編碼問題了。

解決辦法:對$filename轉(zhuǎn)碼,執(zhí)行:iconv('utf-8", "gb2312", $filename)。假如你的環(huán)境不支持iconv函數(shù)可以換別的函數(shù),只要能將$filename的編碼轉(zhuǎn)為gbk就行。
但是這樣問題又會來了,linux用戶又會出現(xiàn)文件名亂碼(因為linux平臺文件名不是gbk編碼)。

考慮到這個問題我采用兩個辦法:第一:放棄一部分客戶,畢竟windows系統(tǒng)用戶占絕大部分。第二:像gmail一樣,提供兩個下載地址。一個文件名gbk編碼,一個文件名utf-8編碼。

解決Excel內(nèi)數(shù)據(jù)的PHP導(dǎo)出Excel亂碼:

PHP導(dǎo)出Excel亂碼原因:網(wǎng)頁編碼與Excel編碼不一致。

解決辦法:既然編碼不一致,那讓其一致了就OK了。定義Excel的字符集:header("Content-Type: application/vnd.ms-excel; charset=UTF-8"),看到charset=UTF-8了吧,讓其與您網(wǎng)頁編碼一致即可解決Excel內(nèi)數(shù)據(jù)亂碼的問題了,這個比較簡單!

責(zé)任編輯:曹凱 來源: 百度博客
相關(guān)推薦

2009-12-02 16:53:25

PHP發(fā)送郵件亂碼

2009-12-02 10:08:33

PHP mail()函

2009-11-26 15:42:18

PHP函數(shù)mail()

2009-09-07 18:40:28

PHP中文亂碼

2010-07-15 14:01:12

telnet亂碼

2010-10-13 17:22:12

MySQL查詢亂碼

2011-03-01 15:38:44

Fireftp亂碼

2009-06-25 15:06:20

Javadoc亂碼

2009-11-30 10:55:16

PHP頁面亂碼

2009-07-01 18:14:36

JSP亂碼

2009-11-23 17:56:44

PHP緩存機制

2009-11-12 17:08:08

2011-03-11 10:39:07

LAMPPHP

2009-11-30 11:24:49

PHP將EXCEL導(dǎo)入

2009-07-02 13:26:32

JSP中文亂碼

2013-01-30 16:54:21

2010-02-24 16:30:52

WCF常見錯誤

2011-09-06 16:04:59

Ubuntu

2011-07-05 09:44:31

QT Mysql 亂碼

2012-03-21 10:16:31

JavaJSP
點贊
收藏

51CTO技術(shù)棧公眾號