首页 > 编程 > PHP > 正文

php导出中文内容excel文件类实例

2019-11-21 22:53:51
字体:
来源:转载
供稿:网友

本文实例讲述了php导出中文内容excel文件类。分享给大家供大家参考。具体如下:

<?php class toExcel{  public $link = null;  function __construct(){  }   /***************************************************************************  * $mapping:数组格式头信息$map=array('No','Name','Email','Age');  * $datalist:数据库查出来的结果集  * $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位的数字转换成字符串输出(如身份证)     }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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表