PHP Yii2.0PHPexecl导出。

Posted on   jiaoqing。  阅读(164)  评论(0编辑  收藏  举报

use phpoffice\phpexcel;

public function actionExport(){

  

$objPHPExcel = new \phpexcel;
$objPHPExcel
->getProperties() //获得文件属性对象,给下文提供设置资源
->setCreator( "MaartenBalliauw") //设置文件的创建者
->setLastModifiedBy( "MaartenBalliauw") //设置最后修改者
->setTitle( "Office2007 XLSX Test Document" ) //设置标题
->setSubject( "Office2007 XLSX Test Document" ) //设置主题
->setDescription( "Test document for Office2007 XLSX, generated using PHP classes.") //设置备注
->setKeywords( "office 2007 openxmlphp") //设置标记
->setCategory( "Test resultfile"); //设置类别
$objPHPExcel->setActiveSheetIndex(0)//表头的信息
->setCellValue('A1', "姓名")
->setCellValue('B1', "楼盘名称")
->setCellValue('C1', "查看次数")
->setCellValue('D1', "制作份数");
$i=2;

$data = array();/*数据*/
foreach ($data as $key => $value) {
$objPHPExcel->getActiveSheet() // 设置第一个内置表(一个xls文件里可以有多个表)为活动的
->setCellValue( 'A'.$i, $value['name'] ) //给表的单元格设置数据
->setCellValue( 'B'.$i, $value['house_title'] ) //数据格式可以为字符串
->setCellValue( 'C'.$i, $value['clicks']) //数字型
->setCellValue( 'D'.$i, 1 ); //
$i++;
}
//得到当前活动的表,注意下文教程中会经常用到$objActSheet
$objActSheet =$objPHPExcel->getActiveSheet();
$objActSheet->setTitle('Simple2222');
//我们将要做的是
//1,直接生成一个文件
$objWriter =\PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('myexchel.xlsx');
header('Content-Type:application/vnd.ms-excel');
header('Content-Disposition:attachment;filename="数据统计.xls"');
header('Cache-Control:max-age=0');
$objWriter =\PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');

}

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· .NET Core 中如何实现缓存的预热?
· 三行代码完成国际化适配,妙~啊~
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?

随笔 - 287, 文章 - 0, 评论 - 3, 阅读 - 42万

Copyright © 2025 jiaoqing。
Powered by .NET 9.0 on Kubernetes

点击右上角即可分享
微信分享提示