這篇文章主要介紹了php導(dǎo)出中文內(nèi)容excel文件類,實例分析了php操作帶有中文內(nèi)容的Excel文件及文件導(dǎo)出的實現(xiàn)方法,需要的朋友可以參考下
本文實例講述了php導(dǎo)出中文內(nèi)容excel文件類。分享給大家供大家參考。具體如下:
- <?php
- class toExcel{
- public $link = null;
- function __construct(){
- }
- /***************************************************************************
- * $mapping:數(shù)組格式頭信息$map=array('No','Name','Email','Age');
- * $datalist:數(shù)據(jù)庫查出來的結(jié)果集
- * $fileName:Excel文件名稱
- * return:Excel格式文件
- **************************************************************************/
- public function toExcel($mapping,$datalist,$fileName) {
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:filename=".iconv('utf-8', 'gb2312', $fileName).".xls");
- echo'<html xmlns:o="urn:schemas-microsoft-com:office:office"
- xmlns:x="urn:schemas-microsoft-com:office:excel"
- xmlns="[url=http://www.w3.org/TR/REC-html40]http://www.w3.org/TR/REC-html40[/url]">
- <head>
- <meta http-equiv="expires" content="Mon, 06 Jan 1999 00:00:01 GMT">
- <meta http-equiv=Content-Type content="text/html; charset=UTF-8">
- <!--[if gte mso 9]><xml>
- <x:ExcelWorkbook>
- <x:ExcelWorksheets>
- <x:ExcelWorksheet>
- <x:Name></x:Name>
- <x:WorksheetOptions>
- <x:DisplayGridlines/>
- </x:WorksheetOptions>
- </x:ExcelWorksheet>
- </x:ExcelWorksheets>
- </x:ExcelWorkbook>
- </xml><![endif]-->
- </head>
- <body link=blue vlink=purple leftmargin=0 topmargin=0>';
- echo'<table border="0" cellspacing="0" cellpadding="0">';
- echo'<tr>';
- if(is_array($mapping)) {
- foreach($mapping as $key=>$val)
- echo"<td style='background-color:#09F;font-weight:bold;'>".$val."</td>";
- }
- echo'</tr>';
- foreach($datalist as $k=>$v){
- echo'<tr>';
- foreach($v as $key=>$val){
- if(is_numeric($val) && strlen($val)>=14){
- echo"<td style='vnd.ms-excel.numberformat:@'>".$val."</td>"; //大于14位的數(shù)字轉(zhuǎn)換成字符串輸出(如身份證)
- }else{
- echo"<td>".$val."</td>";
- }
- }
- echo'</tr>';
- }
- echo'</table>';
- echo'</body>';
- echo'</html>';
- }
- }
- $map=array('No','Name','Email');
- $datal=array(array(1, '管理員', 'admin@163.com'), array(2, 'member', 'member@163.com'));;
- $csv=new toExcel;
- $csv->toExcel($map,$datal,"dataexport");
- ?>
方法二
- <?php
- header("Content-Type: application/vnd.ms-execl");
- header("Content-Disposition: attachment; filename=myExcel.xls");
- header("Pragma: no-cache");
- header("Expires: 0");
- /*first line*/
- $data1= "中文測試";
- $data1=mb_convert_encoding($data1,"GB2312","UTF-8");
- echo $data1."/t";
- echo "world"."/t";
- echo "/t/n";
- /*start of second line*/
- echo "this is second line"."/t";
- echo "Hi,pretty girl"."/t";
- echo "/t/n";
- ?>
希望本文所述對大家的php程序設(shè)計有所幫助。
新聞熱點
疑難解答