tp5 excel导出

  1. Excel:Excel
  2. 引入库文件,使用require 引入
$root = Env::get("root_path");//项目根目录
require $root.'extend/excel/PHPExcel.php';
require $root.'extend/excel/PHPExcel/IOFactory.php';
  1. 导出方法
$objExcel = new PHPExcel();
    $objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');
    $objActSheet = $objExcel->getActiveSheet(0);
    $objActSheet->setTitle('余额提现');//设置excel的标题
    $objActSheet->setCellValue('A1','提现记录id');
    $objActSheet->setCellValue('B1','提现人姓名');
    $objActSheet->setCellValue('C1','手机号');
    $objActSheet->setCellValue('D1','盟友等级');
    $objActSheet->setCellValue('E1','提现金额');
    $objActSheet->setCellValue('F1','提现时间');
    $objActSheet->setCellValue('G1','发放状态');

    $baseRow = 2; //数据从N-1行开始往下输出 这里是避免头信息被覆盖
    foreach ( $data as $r => $d ) {
        $i = $baseRow + $r;
        //$a = Db::name('users')->where('id',$d['uid'])->value('phoneno');
        //dump($a);die;
        $objExcel->getActiveSheet()->setCellValue('A'.$i,$d['id']);
        $objExcel->getActiveSheet()->setCellValue('B'.$i,Db::name('users')->where('id',$d['uid'])->value('name'));
        $objExcel->getActiveSheet()->setCellValue('C'.$i,Db::name('users')->where('id',$d['uid'])->value('phoneno'));
        $lev = Db::name('users')->where('id',$d['uid'])->value('level');
        $objExcel->getActiveSheet()->setCellValue('D'.$i,Db::name('user_level')->where('level',$lev)->value('title'));
        $objExcel->getActiveSheet()->setCellValue('E'.$i,$d['trans_amt']);
        $objExcel->getActiveSheet()->setCellValue('F'.$i,date('Y-m-d H:i:s',$d['create_time']));
        if($d['status'] == 2){
          $d['status'] = '成功';
        }else{
          $d['status'] = '失败';
        }
        $objExcel->getActiveSheet()->setCellValue('G'.$i,$d['status']);
    }
    $objExcel->setActiveSheetIndex(0);
    //直接输出
    // $objExcel->setActiveSheetIndex();
    // header('Content-Type: applicationnd.ms-excel');
    // $time=date('Y-m-d');
    // header("Content-Disposition: attachment;filename=余额提现$time.xls");
    // header('Cache-Control: max-age=0');
    // $objWriter->save('php://output');
    //保存为excel文件
    //$time=date('Y-m-d H:i:s');
    $time = time();
    $objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');

    $path = './data/exportfile/'.date('Y-m-d').'/';
    if(!is_dir($path)){
	mkdir($path,0777,true);
	}
    $objWriter->save($path."余额提现".$time.".xlsx");
    $fileurl = 'https://'.$_SERVER['HTTP_HOST'].$path."余额提现".$time.".xlsx";
原文地址:https://www.cnblogs.com/jigr/p/14861758.html