thinkphp框架excel导出
2021/8/11 20:08:14
本文主要是介绍thinkphp框架excel导出,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
首先需在框架安装phpExcel
将以下代码复制到框架
public static function run($param, $title, $putArr, $fieldArr) { $phpexcel = new \PHPExcel(); //获取当前工作表 $phpexcel->setActiveSheetIndex(0); //设置工作表名称 $phpexcel->getActiveSheet()->setTitle($title); //设置列宽 $charactors = 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'); //计算导出列数 $count = count($putArr); $count != count($fieldArr) ? exit('导出字段有误') : ''; $copy = []; for ($i = 0; $i < $count; $i++) { if (isset($charactors[$i])) { $l = $charactors[$i]; } else { $k = intval($i / $count) - 1; $last = $i % $count; $l = $charactors[$k] . $charactors[$last]; } $copy[] = $l; //设置列宽 $phpexcel->getActiveSheet()->getColumnDimension($l)->setWidth(16); //设置表头 $tl = $l . '1'; $tltitle = $putArr[$i]; $phpexcel->getActiveSheet()->setCellValue($tl, $tltitle); } //将需要导出的数组循环放入excel foreach ($param as $key => $value) { $key += 2; for ($i = 0; $i < $count; $i++) { $phpexcel->getActiveSheet()->setCellValue($copy[$i] . $key, $value[$fieldArr[$i]]); } } $sheet = time() . '.xlsx'; (new \PHPExcel_Writer_Excel2007($phpexcel))->save(SAVE_PATH . $sheet); return '/upload/' . $sheet; }
调用此方法
//excel的表头,第一行 $putArr = ['编号','名称','类型','用户名']; //对应的数组的键名 例:如下 $array = [
[ 'id' => 1, 'name' => 'xxx', 'cate' => '老人', 'username' => '张三', ], [ 'id' => 2, 'name' => 'xxxx', 'cate' => '老年人', 'username' => '李四', ] ];
$fieldArr = ['id','name','cate','username']; //返回文件地址 $path = self::run($array, '文件名称', $putArr, $fieldArr);
根据类似的参数调用此方法,文件将保存到服务器,下载即可
这篇关于thinkphp框架excel导出的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享
- 2024-10-20fruitcake/php-cors 该怎么使用-icode9专业技术文章分享
- 2024-10-18PHP7.1可以使用哪个版本的swoole-icode9专业技术文章分享