您好,登錄后才能下訂單哦!
這篇文章主要介紹“Codeigniter+PHPExcel導出數(shù)據(jù)到Excel文件的實現(xiàn)方法”,在日常操作中,相信很多人在Codeigniter+PHPExcel導出數(shù)據(jù)到Excel文件的實現(xiàn)方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Codeigniter+PHPExcel導出數(shù)據(jù)到Excel文件的實現(xiàn)方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1.準備工作
下載PHPExcel:http://phpexcel.codeplex.com
這是個強大的Excel庫,這里只演示導出Excel文件的功能,其中的大部分功能可能都用不著。
2.安裝PHPExcel到Codeigniter
1)解壓壓縮包里的Classes文件夾中的內(nèi)容到application\libraries\目錄下,目錄結構如下:
--application\libraries\PHPExcel.php
--application\libraries\PHPExcel(文件夾)
2)修改application\libraries\PHPExcel\IOFactory.php文件
--將其類名從PHPExcel_IOFactory改為IOFactory,遵從CI類命名規(guī)則。
--將其構造函數(shù)改為public
3.安裝完畢,寫一個導出excel的控制器(Controller)
代碼如下:
<?php
classTable_exportextendsCI_Controller{
function__construct()
{
parent :: __construct();
// Hereyoushouldaddsomesortofuservalidation
// topreventstrangersfrompullingyourtabledata
}
functionindex($table_name)
{
$query = $this -> db -> get($table_name);
if(!$query)
returnfalse;
// StartingthePHPExcellibrary
$this -> load -> library('PHPExcel');
$this -> load -> library('PHPExcel/IOFactory');
$objPHPExcel = newPHPExcel();
$objPHPExcel -> getProperties() -> setTitle("export") -> setDescription("none");
$objPHPExcel -> setActiveSheetIndex(0);
// Fieldnamesinthefirstrow
$fields = $query -> list_fields();
$col = 0;
foreach($fieldsas$field)
{
$objPHPExcel -> getActiveSheet() -> setCellValueByColumnAndRow($col, 1, $field);
$col++;
}
// Fetchingthetabledata
$row = 2;
foreach($query -> result()as$data)
{
$col = 0;
foreach($fieldsas$field)
{
$objPHPExcel -> getActiveSheet() -> setCellValueByColumnAndRow($col, $row, $data -> $field);
$col++;
}
$row++;
}
$objPHPExcel -> setActiveSheetIndex(0);
$objWriter = IOFactory :: createWriter($objPHPExcel, 'Excel5');
// Sendingheaderstoforcetheusertodownloadthefile
header('Content-Type:application/vnd.ms-excel');
header('Content-Disposition:attachment;filename="Products_' . date('dMy') . '.xls"');
header('Cache-Control:max-age=0');
$objWriter -> save('php://output');
}
}
4.測試
加入數(shù)據(jù)庫有表名為products,此時可以訪問http://www.yoursite.com/table_export/index/products導出Excel文件了。
到此,關于“Codeigniter+PHPExcel導出數(shù)據(jù)到Excel文件的實現(xiàn)方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。