CI框架里面PHPExcel的使用|导出数据到Excel文件
2013-01-02 11:29
976 查看
1. 准备开始……
下载PHPExcel:http://phpexcel.codeplex.com这是个强大的Excel库,这里只演示导出Excel文件的功能,其中的大部分功能可能都用不着。
2. 安装PHPExcel到Codeigniter
1) 解压压缩包里的Classes文件夹中的内容到application\libraries\目录下,目录结构如下:– application\libraries\PHPExcel.php
– application\libraries\PHPExcel (文件夹)
2)修改application\libraries\PHPExcel\IOFactory.php 文件
– 将其类名从PHPExcel_IOFactory改为IOFactory,遵从CI类命名规则。
– 将其构造函数改为public
3. 安装完毕,写一个导出excel的控制器(Controller)
代码如下:<?php
class Table_export extends CI_Controller {
function __construct()
{
parent::__construct();
// Here you should add some sort of user validation
// to prevent strangers from pulling your table data
}
function index($table_name)
{
$this->load->database();
$query = $this->db->query(“select * from `$table_name` WHERE del= 1″);
// $query = mb_convert_encoding(“gb2312″, “UTF-8″, $query);
if(!$query)
return false;
// Starting the PHPExcel library
$this->load->library(‘PHPExcel’);
$this->load->library(‘PHPExcel/IOFactory’);
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setTitle(“export”)->setDescription(“none”);
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue(‘A1′, iconv(‘gbk’, ‘utf-8′, ‘中文Hello’))
->setCellValue(‘B2′, ‘world!’)
->setCellValue(‘C1′, ‘Hello’);
// Field names in the first row
$fields = $query->list_fields();
$col = 0;
foreach ($fields as $field)
{
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col, 1, $field);
$col++;
}
// Fetching the table data
$row = 2;
foreach($query->result() as $data)
{
$col = 0;
foreach ($fields as $field)
{
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col, $row, $data->$field);
$col++;
}
$row++;
}
$objPHPExcel->setActiveSheetIndex(0);
$objWriter = IOFactory::createWriter($objPHPExcel, ‘Excel5′);
//发送标题强制用户下载文件
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’);
}
}
?>
加入数据库有表名为products,此时可以访问http://www.yoursite.com/table_export/index/products 导出Excel文件了
转自:令狐葱@Web前端开发
相关文章推荐
- CI Codeigniter框架里面PHPExcel的使用|导出数据到Excel文件
- CI框架中使用PHPExcel导出Excel文件
- 在Yii框架中使用PHPExcel扩展从数据库导出excel文件功能的实现
- PHPExcel使用-使用PHPExcel导出文件-导出MySQL数据
- 使用PHP导入Excel和导出数据为Excel文件
- ci框架整合phpexcel,实现数据导出excel
- 使用JAVA读取EXCEL文件里面的数据
- 【学习点滴-php】使用phpExcel类导出excel文件相关问题总结
- jsp(servlet)使用poi导出excel数据文件
- 使用PHP将Mysql数据表导出到Excel中
- MVC 使用FileResult导出Excel数据文件
- Asp.Net MVC 使用FileResult导出Excel数据文件
- Yii框架中使用PHPExcel导出Excel文件
- PHP导出MySQL数据到Excel或者CSV文件
- Asp.Net MVC 使用FileResult导出Excel数据文件
- Asp.Net MVC 使用FileResult导出Excel数据文件
- python3使用openpyxl导出巨大量数据到excel文件
- WinForm中把DataGrid里面的数据导出成EXCEL文件(VB.net)
- php数据导入导出之excel(csv文件)
- 使用PHP_XLSXWriter代替PHPExcel 10W+数据秒级导出