PHP 将数据导出到Excel

require_once 'PHPExcel/PHPExcel.php';//下载PHPExcel
/**
 * 导出Excel
 * @param $data Array 导出的数据
 */
function expUser($data){

    // 创建一个处理对象实例 
    $objExcel = new \PHPExcel();
    // 创建文件格式写入对象实例, uncomment 
    $objProps = $objExcel->getProperties();
    //设置创建者
    $objProps->setCreator('admin');
    //描述
    $objProps->setDescription("pprt");
    $objActSheet = $objExcel->getActiveSheet();
    //单元格赋值 
    $objActSheet->setCellValue('A1', 'imei号');  // 字符串内容  
    $objActSheet->setCellValue('B1', '日期');
    $objActSheet->setCellValue('C1', '消耗电量');
    $objActSheet->setCellValue('D1', '文件大小');
    $objActSheet->setCellValue('E1', '有效时间');
    $objActSheet->setCellValue('F1', '包率');

    $num = 1;
    foreach ($data as $k => $v) {
        $temp_date_arr = $v;
        foreach ($temp_date_arr as $key_date => $val_date){
            $num = $num + 1;
            $objActSheet->setCellValueExplicit('A' . $num, $k, PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('B' . $num, $key_date, PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('C' . $num, $val_date['total_use'].'%', PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('D' . $num, $val_date['total_size'], PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('E' . $num, $val_date['total_time'], PHPExcel_Cell_DataType::TYPE_STRING);
            $objActSheet->setCellValueExplicit('F' . $num, $val_date['pack_rate'], PHPExcel_Cell_DataType::TYPE_STRING);
            //设置行的属性
            $objActSheet->getRowDimension($num)->setRowHeight('20px');//设置行高
            $objActSheet->getColumnDimension('F')->setAutoSize(true);//设置自动宽度
        }
        $num = $num + 1;
    }

    //设置行的属性
    $objActSheet->getRowDimension(1)->setRowHeight('20px');//设置行高

    //设置列的属性
    $objActSheet->getColumnDimension("A")->setWidth('20px'); // 设置宽度
    $objActSheet->getColumnDimension("B")->setWidth('20px'); // 设置宽度
    $objActSheet->getColumnDimension("C")->setWidth('20px'); // 设置宽度
    $objActSheet->getColumnDimension("D")->setWidth('20px'); // 设置宽度
    $objActSheet->getColumnDimension("E")->setWidth('20px'); // 设置宽度
    $objActSheet->getColumnDimension("F")->setWidth('20px'); // 设置宽度

    //导出的文件名
    $outputFileName = iconv('UTF-8', 'gb2312', 'imei_' . time() . '.xls');

    //直接导出文件
    // PHPExcel_IOFactory::createWriter($objExcel, 'Excel5')->save($outputFileName);

    //文件直接输出到浏览器
    header('Pragma:public');
    header('Expires:0');
    header('Cache-Control:must-revalidate,post-check=0,pre-check=0');
    header('Content-Type:application/force-download');
    header('Content-Type:application/vnd.ms-excel');
    header('Content-Type:application/octet-stream');
    header('Content-Type:application/download');
    header('Content-Disposition:attachment;filename=' . $outputFileName);
    header('Content-Transfer-Encoding:binary');
    PHPExcel_IOFactory::createWriter($objExcel, 'Excel5')->save('php://output');

    //设置对齐方式	
    $objStyleA3 = $objActSheet->getStyle('A3');
    $objAlignA3 = $objStyleA3->getAlignment();
    $objAlignA3->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
    $objAlignA3->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值