首頁  >  文章  >  後端開發  >  php操作帶有中文內容的Excel檔案及檔案匯出

php操作帶有中文內容的Excel檔案及檔案匯出

墨辰丷
墨辰丷原創
2018-06-09 09:26:091413瀏覽

本篇文章主要介紹php操作帶有中文內容的Excel檔案及檔案匯出,有興趣的朋友參考下,希望對大家有幫助。

本文實例講述了php導出中文內容excel文件類,具體如下:

<?php 
class toExcel{ 
 public $link = null; 
 function __construct(){ 
 }  
 /*************************************************************************** 
 * $mapping:数组格式头信息$map=array(&#39;No&#39;,&#39;Name&#39;,&#39;Email&#39;,&#39;Age&#39;); 
 * $datalist:数据库查出来的结果集 
 * $fileName:Excel文件名称 
 * return:Excel格式文件 
 **************************************************************************/ 
 public function toExcel($mapping,$datalist,$fileName) { 
  header("Content-type:application/vnd.ms-excel"); 
  header("Content-Disposition:filename=".iconv(&#39;utf-8&#39;, &#39;gb2312&#39;, $fileName).".xls"); 
  echo&#39;<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>&#39;; 
  echo&#39;<table border="0" cellspacing="0" cellpadding="0">&#39;; 
  echo&#39;<tr>&#39;; 
  if(is_array($mapping)) { 
   foreach($mapping as $key=>$val) 
   echo"<td style=&#39;background-color:#09F;font-weight:bold;&#39;>".$val."</td>"; 
  } 
  echo&#39;</tr>&#39;; 
  foreach($datalist as $k=>$v){ 
   echo&#39;<tr>&#39;; 
   foreach($v as $key=>$val){ 
    if(is_numeric($val) && strlen($val)>=14){ 
     echo"<td style=&#39;vnd.ms-excel.numberformat:@&#39;>".$val."</td>"; //大于14位的数字转换成字符串输出(如身份证) 
    }else{ 
     echo"<td>".$val."</td>"; 
    } 
   } 
   echo&#39;</tr>&#39;; 
  } 
  echo&#39;</table>&#39;; 
  echo&#39;</body>&#39;; 
  echo&#39;</html>&#39;; 
 } 
} 
$map=array(&#39;No&#39;,&#39;Name&#39;,&#39;Email&#39;); 
$datal=array(array(1, &#39;管理员&#39;, &#39;admin@163.com&#39;), array(2, &#39;member&#39;, &#39;member@163.com&#39;));; 
$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實例分析了mysql事務處理的使用技巧

php基於curl實現多執行緒抓取

php建立鍊錶及針對鍊錶節點的增加、刪除、更新與遍歷

以上是php操作帶有中文內容的Excel檔案及檔案匯出的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn