Yii Framework框架使用PHPExcel组件的方法示例

 更新时间:2019年07月24日 11:38:45   作者:kalman  
这篇文章主要介绍了Yii Framework框架使用PHPExcel组件的方法,结合实例形式分析了Yii Framework框架中PHPExcel组件的下载、导入、调用等相关操作技巧,需要的朋友可以参考下

本文实例讲述了Yii Framework框架使用PHPExcel组件的方法。分享给大家供大家参考,具体如下:

PHPExcel下载地址http://www.yiiframework.com/extension/phpexcel

将下载的PHPExcel压缩包解压到Yii Framework目录framework\vendors下

代码如下

/**
* 将数据导出到Excel
*/
public function actionExport()
{
    //取要导出到Excel的数据
    $criteria = $this->_getCriteria();
    $data = Statistics::model()->findAll($criteria);
    // 获取PHPExcel引用路径
    $phpExcelPath = Yii::getPathOfAlias('system.vendors');
    // 关闭YII的自动加载功能,改用手动加载,否则会出错,PHPExcel有自己的自动加载功能
    // YII框架对于组件的自动加载,要求类名与文件名一致;
    // 而PHPExcel类对应的文件名包含了上级目录名称,如:IOFactory类对应的文件名为PHPExcel_IOFactory.php
    spl_autoload_unregister(array('YiiBase','autoload'));
    include($phpExcelPath . DIRECTORY_SEPARATOR . 'PHPExcel.php');
    //下面是Excel数据导出处理逻辑
    $objPHPExcel = PHPExcel_IOFactory::load('./content/template/report.xlsx');
    $objPHPExcel->getProperties()->setCreator("Kalman")
    ->setTitle("统计报表")
    ->setSubject("统计报表")
    ->setDescription("统计报表");
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue('A1', 'Hello')
    ->setCellValue('B2', 'world!')
    ->setCellValue('C1', 'Hello')
    ->setCellValue('D2', 'world!');
    $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue('A25', '123456');
    $objPHPExcel->getActiveSheet()->setTitle('report');
    // Excel打开后显示的工作表
    $objPHPExcel->setActiveSheetIndex(0);
    //通浏览器输出Excel报表
    header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
    header('Content-Disposition: attachment;filename="report.xlsx"');
    header('Cache-Control: max-age=0');
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
    $objWriter->save('php://output');
    Yii::app()->end();
    //恢复Yii自动加载功能
    spl_autoload_register(array('YiiBase','autoload'));
}

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

相关文章

  • php实现的mongodb操作类

    php实现的mongodb操作类

    说到php连mongoDB,不得不先介绍一下php的官方手册,网址在:http://us.php.net/manual/en/book.mongo.php,接下来给大家分享一个本人常用的MONGODB的操作类,详见的数据库操作都有了,小伙伴可以参考下。
    2015-05-05
  • Yii2.0中使用js异步删除示例

    Yii2.0中使用js异步删除示例

    本篇文章主要介绍了Yii2.0中使用js异步删除示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • thinkphp中空模板与空模块的用法实例

    thinkphp中空模板与空模块的用法实例

    这篇文章主要介绍了thinkphp中空模板与空模块的用法,以实例形式演示了空模板与空模块具体实现方法,一般空模块多用于系统找不到指定模块的情况,如定位错误页面与URL优化等情况,具有一定的实用价值,需要的朋友可以参考下
    2014-11-11
  • php发送post请求函数分享

    php发送post请求函数分享

    这篇文章主要介绍了一个php发送post请求的函数,开发中经常会用到,需要的朋友可以参考下
    2014-03-03
  • thinkPHP中分页用法实例分析

    thinkPHP中分页用法实例分析

    这篇文章主要介绍了thinkPHP中分页用法,结合实例形式详细分析了thinkPHP数据查询及使用分页类实现分页效果的相关技巧,需要的朋友可以参考下
    2015-12-12
  • 浅谈PHP拦截器之__set()与__get()的理解与使用方法

    浅谈PHP拦截器之__set()与__get()的理解与使用方法

    下面小编就为大家带来一篇浅谈PHP拦截器之__set()与__get()的理解与使用方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • PHP的关于变量和日期处理的一些面试题目整理

    PHP的关于变量和日期处理的一些面试题目整理

    这篇文章主要介绍了PHP的关于变量和日期处理的一些面试题目整理,也是PHP入门学习中的基础知识,需要的朋友可以参考下
    2015-08-08
  • Zend Framework开发入门经典教程

    Zend Framework开发入门经典教程

    这篇文章主要介绍了Zend Framework开发入门知识点,详细介绍了Zend Framework开发的zend源码下载,环境配置,基本组件使用与相关注意事项等,需要的朋友可以参考下
    2016-03-03
  • ThinkPHP实例化模型的四种方法概述

    ThinkPHP实例化模型的四种方法概述

    这篇文章主要介绍了ThinkPHP实例化模型的四种方法,有着非常广泛的实用价值,需要的朋友可以参考下
    2014-08-08
  • Yii2 GridView实现列表页直接修改数据的方法

    Yii2 GridView实现列表页直接修改数据的方法

    这篇文章主要介绍了Yii2 GridView实现列表页直接修改数据的方法的相关资料,小编认为非常具有参考价值,特此分享到脚本之家平台,需要的朋友可以参考下
    2016-05-05

最新评论