欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHPExcel读取EXCEL中的图片并保存到本地的方法

程序员文章站 2022-08-29 10:04:24
hpexcel是相当强大的 ms office excel 文档生成类库,当需要输出比较复杂格式数据的时候,phpexcel 是个不错的选择。 经过认真研究api文档和查...

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();
}