如何使用PHPExcel将图片数据从数据库导出到Excel?

如何使用phpexcel将图片数据从数据库导出到excel?

phpexcel按模板导出数据图片到excel

问题:

使用phpexcel按模板导出数据到excel时,遇到数据库img字段中存放的图片路径为网址,但导出时显示的是网址,如何修改代码将图片导出到excel?

解决方案:

立即学习“PHP免费学习笔记(深入)”;

第一步,获取图片

  • 获取数据库中img字段中的图片路径(假设为$imageurl)

第二步,创建phpexcel图片对象

  • 实例化一个phpexcel图片对象($objdrawing)
  • 设置图片名称、描述和图片mime类型

第三步,加载图片

  • 对于本地图片:

    • 从本地路径加载图片(imagecreatefromjpeg($imageurl))
  • 对于网络图片:

    • 从网络url加载图片(imagecreatefromstring(file_get_contents($imageurl)))

第四步,设置图片属性

  • 设置图片宽高(setrenderingfunction(), setmimetype(), setheight(), setcoordinates())

第五步,将图片添加到excel中

  • 将图片对象添加到当前sheet(setworksheet($sheet))

示例代码:

$imageUrl = $item['img'];
$gdImage = imagecreatefromjpeg($imageUrl); 

$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('Sample image');
$objDrawing->setDescription('Sample image');
$objDrawing->setImageResource($gdImage);
$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG);
$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);
$objDrawing->setHeight(150); 
$objDrawing->setCoordinates($k . $highestRow); 

$objDrawing->setWorksheet($sheet);

以上就是如何使用PHPExcel将图片数据从数据库导出到Excel?的详细内容,更多请关注其它相关文章!