ThinkPHP6 的Excel导入与导出

这篇博客详细介绍了在ThinkPHP6框架下如何实现Excel的导入与导出功能。通过一个PHPExcelHelper辅助类,结合控制器的数据组装和Model的数据验证,实现高效便捷的Excel操作。
摘要由CSDN通过智能技术生成

Excel导入导出功能我们经常用到,下面记录自己的实现方法。Helper类PHPExcelHelper 可以直接拿过来使用。在控制器中实现数据组装,model中实现数据验证,最后导入或导出。

helper类中导出导入的写法

namespace app\common\helper;

use app\common\constant\SystemConstant;
use PHPExcel;

trait PHPExcelHelper
{
   
    /**
     * excel表格导出
     * @param string $fileName 文件名称
     * @param array $headArr 表头名称
     * @param array $data 要导出的数据
     * @author static7
     */
    private function excelExport($fileName = '', $headArr = [], $data = [])
    {
   
        $objPHPExcel = new PHPExcel();
        $objPHPExcel->getProperties();
        $keyA = ord("A"); // 设置表头
        foreach ($headArr as $v) {
   
            $colum = chr($keyA);
            $objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
            $objPHPExcel->setActiveSheetIndex(0)->setCellValue($colum . '1', $v);
            $keyA += 1;
        }

        $column = 2;
        $objActSheet = $objPHPExcel->getActiveSheet();

        foreach ($data as $key => $rows) {
    // 行写入
            $span = ord("A");
            foreach ($rows as $keyName => $value) {
    // 列写入
                //判断数据是否有数组,如果有数组,转换成字符串
                if(is_array($value)){
   
                    $value = implode("、", $value);
                }
                $objActSheet->setCellValue(chr($span) . $column, $value);
                $span++;
            }
            $column++;
        }

        $fileName .= "_" . date("Y_m_d", time()) . ".xls";
        //$fileName .= "_" . date("Y_m_d", Request()->
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值