当前位置: 代码迷 >> PHP >> phpexcel 导出多张图片,该怎么解决
  详细解决方案

phpexcel 导出多张图片,该怎么解决

热度:172   发布时间:2016-04-28 17:52:38.0
phpexcel 导出多张图片
本帖最后由 nzr_dream 于 2015-01-29 17:11:16 编辑
phpexcel 导出图片
   我在网上看了资料  都是导出一张图片,我想导出每行第一列是一个图片,如何实现,下边是一个导出的方法,我应该怎么加入哪?其他的数据都导出来了,就图片出不来,图片的路径信息保存到了$data二维数组下  。注:类库已导入。坐等。。。

//写入excel
function getExcel($fileName,$headArr,$data){
    if(empty($data) || !is_array($data)){
        die("data must be a array");
    }
    if(empty($fileName)){
        exit;
    }
    $date = date("Y_m_d h:i:s",time());
    $fileName .= "_{$date}.xlsx";
 
    //创建新的PHPExcel对象
    $objPHPExcel = new PHPExcel();
    $objProps = $objPHPExcel->getProperties();
     
    //设置表头
    $key = ord("A");
    foreach($headArr as $v){
        $colum = chr($key);
        $objPHPExcel->setActiveSheetIndex(0) ->setCellValue($colum.'1', $v);
        $key += 1;
    }
    
//表数据
    $column = 2;
    $objActSheet = $objPHPExcel->getActiveSheet();
    foreach($data as $key => $rows){ //行写入
$span = ord("A");
        foreach($rows as $keyName=>$value){// 列写入
            $j = chr($span);
           //我想在此处加入图片的code但是不成功,应该怎么写,请提示下

            // $objDrawing = new PHPExcel_Worksheet_Drawing();
            // $objDrawing->setName(‘test’);
            // $objDrawing->setDescription(‘test’);
            // $objDrawing->setPath($data['imgurl']);
            // $objDrawing->setHeight(36);
            // $objDrawing->setCoordinates('');      这里应该怎么写??
            // $objDrawing->setWorksheet($objActSheet);


            $objActSheet->setCellValue($j.$column, $value);
            $span++;
        }
        $column++;
    }
//重命名表
    $objPHPExcel->getActiveSheet()->setTitle('记录');
$fileName = iconv("utf-8", "gb2312", $fileName);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save($fileName); //脚本方式运行,保存在当前目录
exit;
}

------解决思路----------------------
1、被你注释掉的导出图片的代码中,你使用了全角的引号,应改为半角的
2、$objDrawing->setCoordinates('这里是单元格标识');