PHPExcel是一个PHP类库,用来帮助我们简单、高效实现从Excel读取Excel的数据和导出数据到Excel。
相关视频课程:《PHP快速 *** 控Excel之PhpSpreadsheet》
首先下载压缩包:
http://www.jb51.cc/xiazai/leiku/1491
解压后如下:
在根目录创建一个test.PHP用来读取excel的内容 excel文件的内容如下:
然后test.PHP代码如下:
<?PHPheader("content-type:text/HTML;charset=utf8");include './Classes/PHPExcel/IOFactory.PHP';//引入PHPExcel类$inputfilename = './test.xls';//读取的excel文件date_default_timezone_set('PRC');// 读取excel文件try { $inputfileType = PHPExcel_IOFactory::IDentify($inputfilename); $objReader = PHPExcel_IOFactory::createReader($inputfileType); $objPHPExcel = $objReader->load($inputfilename);} catch(Exception $e) { dIE('加载文件发生错误:"'.pathinfo($inputfilename,PATHINFO_BASEname).'": '.$e->getMessage());}$sheet = $objPHPExcel->getSheet(0);$data=$sheet->toArray();//该方法读取不到图片 图片需单独处理$imagefilePath='./images/'.date('Y-m-d').'/';//图片在本地存储的路径if (! file_exists ( $imagefilePath )) { mkdir("$imagefilePath", 0777, true);}//处理图片foreach($sheet->getDrawingCollection() as $img) { List($startColumn,$startRow)= PHPExcel_Cell::coordinateFromString($img->getCoordinates());//获取图片所在行和列 $imagefilename = $img->getCoordinates() . mt_rand(100, 999); switch($img->getMimeType()) { case 'image/jpg': $imagefilename.='.jpg'; imagejpeg($img->getimageResource(),$imagefilePath.$imagefilename); break; case 'image/gif': $imagefilename.='.gif'; imagegif($img->getimageResource(),$imagefilePath.$imagefilename); break; case 'image/png': $imagefilename.='.png'; imagepng($img->getimageResource(),$imagefilePath.$imagefilename); break; } $startColumn = ABC2decimal($startColumn);//由于图片所在位置的列号为字母,转化为数字 $data[$startRow-1][$startColumn]=$imagefilePath.$imagefilename;//把图片插入到数组中}print_r($data);dIE;
function ABC2decimal($abc){ $ten = 0; $len = strlen($abc); for($i=1;$i<=$len;$i++){ $char = substr($abc,0-$i,1);//反向获取单个字符 $int = ord($char); $ten += ($int-65)*pow(26,$i-1); } return $ten;}
以上代码只是处理图片,得到图片路径插入到数组中,如需数据入库,可循环insert,自行处理,打印结果如下:
以上是内存溢出为你收集整理的PHPExcel数据导入(图文)全部内容,希望文章能够帮你解决PHPExcel数据导入(图文)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)