針對將數據圖片導出到 excel 中的需求,我們可以根據題主提供的示例代碼進行修改。導出圖片時,excel 無法直接識別網絡上的圖片鏈接,需要將圖片下載到本地再進行導出。
具體修改如下:
在循環(huán)遍歷數據時,將每張圖片的網絡鏈接轉換為本地路徑:
$imageurl = $item['img']; $gdimage = imagecreatefromjpeg($imageurl);
登錄后復制
使用 imagecreatefromjpeg() 函數將圖片從網絡下載到本地,并保存為 $gdimage 變量。
接下來,使用 phpexcel_worksheet_memorydrawing 類創(chuàng)建圖片對象,并設置其屬性:
$objdrawing = new phpexcel_worksheet_memorydrawing(); $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);
登錄后復制
- setimageresource() 設置圖片資源。
- setrenderingfunction() 設置圖片呈現格式為 jpeg。
- setmimetype() 設置圖片 mime 類型。
- setheight() 設置圖片高度為 150 像素。
- setcoordinates() 設置圖片在工作表中的坐標,以 $k$highestrow 表示,其中 $k 是列名稱,$highestrow 是行號。
最后,將圖片對象添加到工作表中:
$objDrawing->setWorksheet($sheet);
登錄后復制