我之前不會導出的時候,各種找DEMO啊,案例啊,然後結果還是沒實現功能,一方面可能我太笨,另一方面,就是,感覺對於小白,估計要做到(誒,你這個複製程式碼到這裡,這個文件放在這裡,這裡改一下就可以了)這樣的地步,可能大神在發文的時候無意識的忽略了一點小細節(而這恰恰確實是現在快餐式的程式設計師培訓出來的弱項,當然也包括我),所以,我按我自己小白式的理解來寫這個貼,但願其他小白萬一能看到這個,也能應應急,畢竟,我以前只會套用,現在,再看多少有些懂了,小白們還是需要時間累積和程式碼累積的,加油!
既然是PHPExcel 導出(我現在只說導出),當然需要這個檔案了,拿去(http://phpexcel.codeplex.com/)
下載好後,放在哪裡呢?一般TP會有放在第三方類別庫(指除了ThinkPHP 框架、應用專案類別庫之外的其他類別庫,一般由第三方系統或產品提供,如Smarty、Zend 等系統的類別庫等...)一般在ThinkPHP/Library/Vender
放在這下面.
然後是要複製下面這段程式碼前後端檔案同級下的Common下的function.php/**<br>
* 匯出到EXCEL <br>
* @param type $expTitle<br>
* @param type $expCellName<br>
* @param type $expTableData<br>
*/<br>
function exportExcel($expTitle, $expCellName, $expTableData) {<br>
$xlsTitle = iconv('utf-8', 'gb2312', $expTitle); //檔案名稱<br>
$fileName = $expTitle . date('_YmdHis'); //or $xlsTitle 檔案名稱可依自己狀況設定<br>
$cellNum = count($expCellName);<br>
$dataNum = count($expTableData);<br>
<br>
vendor("PHPExcel");<br>
<br>
$objPHPExcel = new PHPExcel();<br>
$cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', ' L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X' , 'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', ' AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV', 'AWAW' , 'AX', 'AY', 'AZ');<br>
// $objPHPExcel->getActiveSheet(0)->mergeCells('A1:' . $cellName[$cellNum - 1] . '1'); //合併儲存格<br>
for ($i = 0; $i
$objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i] . '1', $expCellName[$i][1]);<br>
}<br>
// Miscellaneous glyphs, UTF-8<br>
for ($i = 0; $i
for ($j = 0; $j
$objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j] . ($i + 2), $expTableData[$i][$expCellName);
}<br>
}<br>
<br>
header('pragma:public');<br>
header('Content-type:application/vnd.ms-excel;charset=utf-8;name="' . $xlsTitle . '.xls"');<br>
header("Content-Disposition:attachment;filename=$fileName.xls"); //attachment新視窗列印inline本視窗列印<br>
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');<br>
$objWriter->save('php://output');<br>
exit;<br>
}<br>
vendor("PHPExcel");上面程式碼的這個,如果你檔案不是放這裡,記得要改。 這裡補充一下,就是需要導出加自訂樣式(例如導出文字帶點顏色標記之類的)就要在這裡面添加了,這裡有註解掉的一段程式碼,就像這樣(這個也不用自己寫?網址給你,你要的都在這裡。
當然,這個是公用的匯出函數,所以,如果要匯出幾個另類的表格,就要再複製上面的程式碼,改下名稱再呼叫就行了。
接下來是C的程式碼/*
* 測試
*/
public function text(){<br>
//取得所需資料<br>
$res=M('order')->select();<br>
$export=I('export');//觸發導出指令的值<br>
if($export==1){
$xlsName="訂單清單";//表名<br>
$xlsCell = array( //這裡是寫入欄位名稱的<br>
array('ddh','訂單編號') ,<br>
array('xdsj',』單一時間') ,<br>
array('dgje','訂購金額') , <br>
array('yhje','優惠金額') ,<br>
);<br>
$xlsData=array(); <br>
foreach ($res as $key=>$val){<br>
地
'ddh'=>" ".$valordersn
'xdsj'=>date('Y-m-d H:i:s,$val[create',$val
'dgje'=>$val[fee],<br>
'yhje'=>$val[discountprice],<br> 'yhje'=>$val[discountprice],<br>
)));且<br>
}
已的函數中呼叫了。 <br>
die(); <br> }
OK,且大功告成,趕快試試看吧! ! !
(感覺漏了點什麼,有大神發現問題或有更好的方法,歡迎補充,調教下我們這群小白。謝謝。。。)

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Atom編輯器mac版下載
最受歡迎的的開源編輯器

Dreamweaver CS6
視覺化網頁開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能