HPExcel是相當強大的 MS Office Excel 文檔產生類庫,當需要輸出比較複雜格式資料的時候,PHPExcel 是個不錯的選擇。
經過認真研究API文檔和查看官方文檔,終於找到讀取EXCEL中的圖片,目前我只能讀取excel 2003格式的。excel2007貌似還不支援。 其中主要使用的API為PHPExcel_Worksheet,PHPExcel_Worksheet_BaseDrawing,PHPExcel_Worksheet_MemoryDrawing。
廢話少說,直接上代碼:
複製代碼 代碼如下:
require_once './Classes/PHPExcel.php';
$objPHPExcel = new PHPExcel();
$objReader = PHPExcel_IOFactory::createReader('Excel5'); //載入2003的
$objPHPExcel = $objReader->load("goods_list.xls"); //載入檔案
foreach ($objPHPExcel->getSheet(0)->getDrawingCollection() as $k => $drawing) {
$codata = $drawing->getCoordinates(); //得到單中繼資料 比如G2單元
$filename = $drawing->getIndexedFilename(); //檔案名稱
ob_start();
call_user_func(
$drawing->getRenderingFunction(),
$drawing->getImageResource()
);
$imageContents = ob_get_contents();
file_put_contents('pic/'.$codata.'_'.$filename.'.jpg',$imageContents); //把檔案儲存到本地
ob_end_clean();
}