直接上干货:
<?php
$cards_list = Cards::find($parameters);
$objPHPExcel = new \PHPExcel();
$objPHPExcel->getProperties()->setCreator("jiequan")
->setLastModifiedBy("jiequan")
->setTitle("card List")
->setSubject("card List")
->setDescription("card List")
->setKeywords("excel")
->setCategory("result file");
$exportKeys = ["number","password","gtime"];
/*以下就是对处理Excel里的数据, 横着取数据,主要是这一步,其他基本都不要改*/
$cell = ["A","B","C","D"];
$fieldsKeyValue = array(
"number" => "卡号",
"password" => "密码",
"gtime" => "领取时间",
);
foreach ($exportKeys as $k => $field) {
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($cell[$k] . '1', $fieldsKeyValue[$field]);
}
foreach ($cards_list as $k => $card) {
$num = $k + 1;
foreach ($exportKeys as $i => $exportKey) {
if($exportKey == "number" || $exportKey == "password") {
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($cell[$i] . ($num + 1), $card->$exportKey,\PHPExcel_Cell_DataType::TYPE_STRING);
} else {
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($cell[$i] . ($num + 1), $card->$exportKey);
}
}
$objPHPExcel->getActiveSheet()->getColumnDimension( 'A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension( 'B')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension( 'C')->setWidth(20);
}
$objPHPExcel->getActiveSheet()->setTitle('card_List');
$objPHPExcel->getDefaultStyle()->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
$name = 'cardList' . "ex" . date("YmdHis",time()) . rand(1000,9999);
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition:inline;filename="'.$name.'.xls"');
$objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
php使用PHPExcel 导出数据表到Excel文件
abiao19812024-07-03 8:28
相关推荐
笑容掩饰我的失落5 小时前
区块链从小白到精通(七):Solidity 语法精讲——数据类型、函数、修饰器与事件笑容掩饰我的失落1 天前
区块链从小白到精通(八):从零实现一个标准 ERC-20 代币(完整可运行代码)xbzb2 天前
从零容器化部署 ECShop:Harbor 私有仓库 + 自定义 PHP 镜像 + LNMP 三容器爱和冰阔落3 天前
【Linux网络】JsonCpp 怎么实现序列化?从 Request/Response 到网络计算器消息设计eggwyw3 天前
PHP8.5怎么用ffmpeg提取视频里的字幕轨道我叫黑大帅4 天前
PHP 常驻 Worker 中 MySQL 连接中断问题报告国科安芯4 天前
人在回路中的总线:商业空间站环境控制与生命保障系统CANFD网络的可靠性与功能安全码途行者4 天前
网站的SQL 注入:从攻击原理到防御措施老秦包你会4 天前
计算机网络第二课 ----Socket(套接字)编程预备迪康coolmu5 天前
出差终端数据安全落地实战:基于迪康端点安全一体化管理系统的四道防线实践