1. 下载PHPExcel,放到项目的extention下面:如截图
2. 在Controller里面创建方法如下,参考文章点击打开链接:
</pre><pre name="code" class="javascript">/**
* export all models.
*/
public function actionExport()
{
//
// 第1部分:导出Excel表头设置
/*
* PHPExcel类库存放在protected/extension/PHPExcel目录下
*PHPExcel类是一个用来读写 Excel 2007 (OpenXML) 文件的 PHP 库。
*
* 导出Excel表头设置
*/
Yii::import('ext.phpexcel.XPHPExcel');
$excel = XPHPExcel::createPHPExcel();
$excel->setActiveSheetIndex(0);
$header = array('A' => 'ID', 'B' => 'Project', 'C' => 'SW', 'D' => 'Package', 'E' => 'Duration Time', 'F' => 'Error Count', 'G' => 'Error Frequency', 'H' => 'Logtime',);
foreach ($header as $key => $value) {
$excel->setActiveSheetIndex(0)->setCellValue($key . '1', $value);
$excel->getActiveSheet()->getColumnDimension($key)->setWidth(15);
}
$n = 2;//行数开始位置
表头设置完成
/*
*数据库查询得出结果集$rs
*/
//如果数据量比较大,要使用分页;得到结果集数量小就直接上第2步代码
$connection = Yii::app()->db;
// $count_sql = 'select count(*) from tbl_heartbeat_report';
// $count = $connection->createCommand($count_sql)->queryRow();
<p align="left">//$rows =$count['count'];</p><p align="left">//$per_page_max= 3000;</p><p align="left">//$page =ceil($rows / $per_page_max);</p>
$sql = 'select report_id, report_project, report_sw, report_package, report_duration_time, report_error_count, report_error_frequency, report_logtime from tbl_heartbeat_report where 1=1';
if(!empty($_GET['report_id']))
{
$sql.= " and report_id like '%".$_GET['report_id']."%'";
}
if(!empty($_GET['report_project']))
{
$sql.= " and report_project like '%".$_GET['report_project']."%'";
}
if(!empty($_GET['repor