如何使用phpexcel將數(shù)據(jù)圖片導(dǎo)出到excel
在使用phpexcel根據(jù)模板導(dǎo)出數(shù)據(jù)到excel時,遇到了圖片導(dǎo)出為網(wǎng)址的問題。為了將圖片導(dǎo)出到excel中,需要進(jìn)行以下修改:
首先,需要獲取圖片的本地路徑。將$imageurl = $item[‘img’];修改為:
$imageurl = substr($item['img'], 21, strlen($item['img']) - 2 - 20);
登錄后復(fù)制
接著,使用imagecreatefromjpeg函數(shù)創(chuàng)建gd圖像資源:
立即學(xué)習(xí)“PHP免費學(xué)習(xí)筆記(深入)”;
$gdimage = imagecreatefromjpeg($imageurl);
登錄后復(fù)制
然后,使用phpexcel_worksheet_drawing對象創(chuàng)建圖像對象:
$objdrawing = new phpexcel_worksheet_drawing(); $objdrawing->setname('sample image');
登錄后復(fù)制
設(shè)置圖像描述:
$objdrawing->setdescription('sample image');
登錄后復(fù)制
設(shè)置圖像資源:
$objdrawing->setimageresource($gdimage);
登錄后復(fù)制
設(shè)置圖像渲染函數(shù):
$objdrawing->setrenderingfunction(phpexcel_worksheet_memorydrawing::rendering_jpeg);
登錄后復(fù)制
設(shè)置圖像mime類型:
$objdrawing->setmimetype(phpexcel_worksheet_memorydrawing::mimetype_default);
登錄后復(fù)制
設(shè)置圖像高度(單位:像素):
$objdrawing->setheight(150);
登錄后復(fù)制
設(shè)置圖像坐標(biāo)(單元格位置):
$objdrawing->setcoordinates($k . $highestrow);
登錄后復(fù)制
最后,將圖像添加到工作表中:
$objDrawing->setWorksheet($sheet);
登錄后復(fù)制
通過以上修改,即可將圖片導(dǎo)出到excel中。