zoukankan      html  css  js  c++  java
  • 从PHP导出图片excel的方法

    <?php

        include '/phpexcel/PHPExcel.php';
        $excel = new PHPExcel();
        $objDrawing = new PHPExcel_Worksheet_Drawing();
        
        /*设置文本对齐方式*/
        $excel->getDefaultStyle()->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
        $excel->getDefaultStyle()->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
        $objActSheet = $excel->getActiveSheet();

        $letter = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N');
        /*设置表头数据*/
        $tableheader = array('姓名', '性别', '年龄', '班级', '头像');
        /*填充表格表头*/
        for($i = 0;$i < count($tableheader);$i++) {
            $excel->getActiveSheet()->setCellValue("$letter[$i]1","$tableheader[$i]");
        }

        /*设置表格数据*/
        $data = array(
            array('小王', '男', '20', 'CS12', 'test.jpg'),
            array('小李', '女', '21', 'CS12', 'test.jpg'),
            array('小周', '男', '22', 'CS12', 'test.jpg'),
            array('小赵', '女', '23', 'CS12', 'test.jpg'),
            array('小张', '男', '24', 'CS12', 'test.jpg')
        );

        /*填充表格内容*/
        for ($i = 0;$i < count($data);$i++) {
            $j = $i + 2;
            /*设置表格宽度*/
            $objActSheet->getColumnDimension("$letter[$i]")->setWidth(20);
            /*设置表格高度*/
            $excel->getActiveSheet()->getRowDimension($j)->setRowHeight(100);
            /*向每行单元格插入数据*/
            for ($row = 0;$row < count($data[$i]);$row++) {
                if ($row == (count($data[$i]) -1 )) {
                    /*实例化插入图片类*/
                    $objDrawing = new PHPExcel_Worksheet_Drawing();
                    /*设置图片路径*/
                    $objDrawing->setPath($data[$i][$row]);
                    /*设置图片高度*/
                    $objDrawing->setHeight(100);
                    /*设置图片要插入的单元格*/
                    $objDrawing->setCoordinates("$letter[$row]$j");
                    /*设置图片所在单元格的格式*/
                    $objDrawing->setOffsetX(80);
                    $objDrawing->setRotation(20);
                    $objDrawing->getShadow()->setVisible(true);
                    $objDrawing->getShadow()->setDirection(50);
                    $objDrawing->setWorksheet($excel->getActiveSheet());
                    continue;
                }
                $excel->getActiveSheet()->setCellValue("$letter[$row]$j","111");
            }
        }

        $write = new PHPExcel_Writer_Excel5($excel);
        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-execl");
        header("Content-Type:application/octet-stream");
        header("Content-Type:application/download");;
        header('Content-Disposition:attachment;filename="测试文件.xls"');
        header("Content-Transfer-Encoding:binary");
        $write->save('php://output');

  • 相关阅读:
    jupyter notebook 和 opencv
    AMD 处理器 Ubuntu 16.04 LTS 配置 opencv、caffe 小结
    caffe 在 windows 使用
    MATLAB数字图像处理
    游记(5)
    POJ-1789-Truck History 解题报告
    POJ-2560-Freckles 解题报告
    POJ-1308-Is It A Tree? 解题报告
    POJ-1182-食物链 解题报告
    POJ-1861-Network 解题报告
  • 原文地址:https://www.cnblogs.com/licanhui/p/11130342.html
Copyright © 2011-2022 走看看