ThinkPHP的使用(四)Excel文件导出

栏目: PHP · 发布时间: 8年前

内容简介:ThinkPHP的使用(四)Excel文件导出

下载PHPExcel文件:下载地址

下载的文件夹内容如下所示

ThinkPHP的使用(四)Excel文件导出

将Classes文件夹下的PHPExcel及PHPExcel.PHP文件复制到ThinkPHP->Library->Vendor下,并将PHPExcel.PHP改名为PHPExcel.class.PHP

模板的导出链接如下所示:

<a style="text-decoration: none;" href="{:U('expNews')}">【导出】</a>

将以下代码复制到Common->Common->function.PHP中去

/**  *  * 导出Excel  */ function exportExcel($expTitle,$expCellName,$expTableData){        $xlsTitle = iconv('utf-8', 'gb2312', $expTitle);//文件名称        $cellNum = count($expCellName);        $dataNum = count($expTableData);        import("Vendor.PHPExcel");         $objPHPExcel = new /PHPExcel();        $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','AW','AX','AY','AZ');                $objPHPExcel->getActiveSheet(0)->mergeCells('A1:'.$cellName[$cellNum-1].'1');//合并单元格        for($i=0;$i<$cellNum;$i++){            $objPHPExcel->setActiveSheetIndex(0)->setCellValue($cellName[$i].'2', $expCellName[$i][1]);         }         for($i=0;$i<$dataNum;$i++){          for($j=0;$j<$cellNum;$j++){            $objPHPExcel->getActiveSheet(0)->setCellValue($cellName[$j].($i+3), $expTableData[$i][$expCellName[$j][0]]);          }                  }          header('pragma:public');        header('Content-type:application/vnd.ms-excel;charset=utf-8;name="'.$xlsTitle.'.xls"');        header("Content-Disposition:attachment;filename=$expTitle.xls");//attachment新窗口打印inline本窗口打印        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');          $objWriter->save('php://output');         exit;        }

然后在相应的Controller文件中写入如下代码

//导出excel function expNews(){//导出Excel    $xlsName  = "News".date('_YmdHis');    $xlsCell  = array(    array('news_id','序号'),    array('news_title','标题'),    array('news_author','作者'),    array('news_content','内容'),    array('add_time','编辑时间'),    );    $order = M('News');    $xlsData  = $order->Field('news_id,news_title,news_author,news_content,add_time')->select();     /exportExcel($xlsName,$xlsCell,$xlsData);   }

注意:根据自己数据库的字段做相应更改


以上所述就是小编给大家介绍的《ThinkPHP的使用(四)Excel文件导出》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

免费

免费

克里斯•安德森 / 蒋旭峰、冯斌、璩静 / 中信出版社 / 2012-10 / 68.00元

一种商业模式既可以统摄未来的市场,也可以挤垮当前的市场——在我们这个现代经济社会里,这并不是一件不可能的事情。 “免费”就是这样的一种商业模式,它所代表的正是数字化网络时代的商业未来。 在《免费》这本书中,克里斯•安德森认为,新型的“免费”并不是一种左口袋出、右口袋进的营销伎俩,而是一种把货物和服务的成本压低到零的新型卓越能力。在20世纪“免费”是一种强有力的推销手段,而在21世纪它已经成为......一起来看看 《免费》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具