phpexcel图片获取
phpexcel图片获取常见的两种方式:
require_once dirname(__FILE__) . '/../Jn/PHPExcel.php'; $filePath = "123.xls"; $inputFileType = PHPExcel_IOFactory::identify($filePath); $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objPHPExcel = $objReader->load("templates/123.xls"); $worksheet = $objPHPExcel->getSheet(0); //**读取excel文件中的指定工作表*/ foreach ($worksheet->getDrawingCollection() as $drawing) { $xy=$drawing->getCoordinates();//得到单元数据 比如G2单元 $path = "pic/"; if ($drawing instanceof PHPExcel_Worksheet_Drawing) {//支持excel2007后缀为(.xlsx) $filename = $drawing->getPath(); //第一种直接拷贝 //copy($filename, $path.$codata.'_'.$imageFileNames); //第二种另存图片流 $imgData=file_get_contents($filename); $imageFileName = $drawing->getIndexedFilename(); //$ImgExt = strchr($imageFileName,'.'); file_put_contents($path.$codata.'_'.$imageFileNames,$imageContents); //把文件保存到本地 }elseif($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) {//支持excel2003后缀为(.xls) $imageFileNames = $drawing->getIndexedFilename(); //$ImgExt = strchr($imageFileNames,'.'); ob_start(); call_user_func( $drawing->getRenderingFunction(), $drawing->getImageResource() ); $imageContents = ob_get_contents(); ob_end_clean(); echo strlen($imageContents); file_put_contents($path.$codata.'_'.$imageFileNames,$imageContents); //把文件保存到本地 } }