巅云智能建站平台搭建版(创业门户版)火爆上线,终身授权!新增:文章智能采集+全站真静态打包+城市分站+智能小程序+非法词过滤+H5自适应+智能链词等功能功能详情
帮助文档Help

Codeigniter+PHPExcel实现导出数据到Excel文件

一佰互联网站制作(www.yinxi.net) 发布日期 2019-04-29 09:01:09 浏览数: 108

PHPExcel是用来操作OfficeExcel文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格。而Codeigniter是一个功能强大的PHP框架。二者结合就能起到非常棒的效果啦!

1.准备工作

下载PHPExcel:http://phpexcel.codeplex.com
这是个强大的Excel库,这里只演示导出Excel文件的功能,其中的大部分功能可能都用不着。

2.安装PHPExcel到Codeigniter

1)解压压缩包里的Classes文件夹中的内容到applicationlibraries目录下,目录结构如下:
--applicationlibrariesPHPExcel.php
--applicationlibrariesPHPExcel(文件夹)
2)修改applicationlibrariesPHPExcelIOFactory.php文件
--将其类名从PHPExcel_IOFactory改为IOFactory,遵从CI类命名规则。
--将其构造函数改为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.测试

加入数据库有表名为products,此时可以访问http://www.yoursite.com/table_export/index/products导出Excel文件了。

一佰互联是全国知名建站品牌服务商,我们有九年网站建设、网站制作、网页设计、php开发和域名注册及虚拟主机服务经验,提供的自助建站服务更是全国有名。近年来还整合团队优势自主开发了可视化多用户”巅云建站系统“3.0平台版,拖拽排版网站制作设计,轻松实现pc站、手机微网站、小程序、APP一体化全网营销网站建设 ,已成功的为全国上百家网络公司提供自助建站平台搭建服务。

相关新闻more

24
12月
高端建站公司解析营销型网站建设的要点 - 网

  最近这几年这种营销型网站建设不断升温,造成这种好趋势的主要原因就是因为这一类的营销型网站的转化率非常好,但是也因为这... >>详情

05
04月
开始建站之前需要思考的几个问题

网站建设是为了建造出令用户满意的网站,进而通过增加浏览量来达到宣传、盈利等目的。而要想保障网站建设效果好,在开始建设前要思考以下几个问题,下... >>详情

20
04月
【HTML5】Canvas绘制简单图片教程

获取Image对象,new出来定义Image对象的src属性,参数:图片路径定义Image对象的onload方法,调用context对象的d... >>详情

30
03月
2019全年热点营销日历新鲜出炉!新媒体运营

简介:时间过得真是快,转眼又是年末。这篇文章早该出了,因为一直都有伙伴们再问。不管是做新媒体运营,活动策划,还是营销推广、广告公关,年底规划... >>详情

高端网站建设

美工兼顾SEO,为企业电子商务营销助力!

电话:

023-85725751
建站

产品

域名注册 虚拟主机 云服务器 企业邮局
智能建站 APP打包 微站/小程序 创业平台
网站推广 媒体营销 智能采集 AI机器人
400电话 短信营销 店销机器人
私人定制 门户网站