PHPExcel读取excel的多个sheet存入数据库
//批量导入文章 excel读取 public function importdata ( $filename, $tmp_name ) { //设置超时时间 set_time_limit(0); $rootPath = OA_FILES_ROOT.'/' ; //引入phpexcel // $_SERVER["WL_OA"] = 'E:/www/2.151/oa/web'; $_SERVER["WL_OA"] = '/opt/wwwroot/wl/oa/web'; require($_SERVER["WL_OA"] . "/Classes/PHPExcel.php"); require($_SERVER["WL_OA"] . "/Classes/PHPExcel/IOFactory.php"); require($_SERVER["WL_OA"] . "/Classes/PHPExcel/Reader/Excel5.php"); //判断文件格式 $path_parts = pathinfo($filename) ; $extension = strtolower($path_parts['extension']) ; if ( !in_array($extension, array('xls','xlsx'))) { wl_set_operation_msg ( "文件格式不正确,请重新选择", 2, bd_oa_url ( 'helpcenter/manage_article' ), 3 ); } //上传后的文件名 $randName = substr(md5(rand(10,99)), 0,4) ; $name = date('YmdHis').$randName.'.'.$extension ; $realFile = $rootPath.$name; //上传后的文件名地址 //移动上传文件 $result = move_uploaded_file( $tmp_name, $realFile ); if ( $result ) { $PHPExcel = new PHPExcel() ; $PHPReader = new PHPExcel_Reader_Excel2007(); if( !$PHPReader->canRead($realFile) ){ $PHPReader = new PHPExcel_Reader_Excel5(); if( !$PHPReader->canRead( $realFile ) ){ wl_set_operation_msg ( "文件不可读,请重新选择", 2, bd_oa_url ( 'helpcenter/manage_article' ), 3 ); return false; } } $_excelData = array() ; //读取excel $PHPExcel = $PHPReader->load( $realFile ); //获取工作表的数目 $sheetCount = $PHPExcel->getSheetCount(); for ( $i = 0; $i < $sheetCount; $i++ ) { $_currentSheet = $PHPExcel->getSheet( $i ) ; $_allRow = $_currentSheet->getHighestRow(); //获取Excel中信息的行数 $_allColumn = $_currentSheet->getHighestColumn();//获取Excel的列数 $highestRow = intval( $_allRow ) ; $highestColumn = PHPExcel_Cell::columnIndexFromString($_allColumn);//有效总列数 for( $row = 2; $row <= $highestRow; $row++ ) { $_excelData['onecatalog'] = $_currentSheet->getCellByColumnAndRow(0, $row)->getValue() ; $_excelData['twocatalog'] = $_currentSheet->getCellByColumnAndRow(1, $row)->getValue() ; $_excelData['threecatalog'] = $_currentSheet->getCellByColumnAndRow(2, $row)->getValue() ; $_excelData['title'] = $_currentSheet->getCellByColumnAndRow(3, $row)->getValue() ; $_excelData['content'] = $_currentSheet->getCellByColumnAndRow(4, $row)->getValue() ; if ( empty($_excelData['onecatalog']) || empty($_excelData['twocatalog']) || empty($_excelData['threecatalog']) ) { self::add_log( array('sType'=>"导入失败",'doContent'=>$filename." 下 Sheet".($i+1)." 中第 ".$row." 行导入失败",'iUid'=>$this->loginedUid,'doTime'=>date("Y-m-d H:i:s"))) ; unset( $_excelData ) ; continue ; } if ( !is_string( $_excelData['title'] ) || !is_string( $_excelData['content'] ) || empty($_excelData['title']) || empty($_excelData['content']) ) { self::add_log( array('sType'=>"导入失败",'doContent'=>$filename." 下 Sheet".($i+1)." 中第 ".$row." 行导入失败",'iUid'=>$this->loginedUid,'doTime'=>date("Y-m-d H:i:s"))) ; unset( $_excelData ) ; continue ; } //插入数据库 if ( !self::doData( $_excelData ) ) { unset( $_excelData ) ; continue ; } unset($_excelData); } } return true ; }else{ wl_set_operation_msg ( "文件上传失败,请重新选择", 2, bd_oa_url ( 'helpcenter/manage_article' ), 3 ); } }
PHPExcel读取excel的多个sheet存入数据库的更多相关文章
- PHPExcel读取excel文件示例
PHPExcel读取excel文件示例PHPExcel最新版官方下载网址:http://phpexcel.codeplex.com/PHPExcel是一个非常方便生成Excel格式文件的类,官方下载包 ...
- 利用PHPExcel读取Excel的数据和导出数据到Excel
PHPExcel是一个PHP类库,用来帮助我们简单.高效实现从Excel读取Excel的数据和导出数据到Excel.也是我们日常开发中,经常会遇到的使用场景.比如有个客户信息表,要批量导出发给同事,我 ...
- (实用篇)PHPExcel读取Excel文件的实现代码
用PHPExcel读取Excel 2007 或者Excel2003文件,需要的朋友,可以参考下. 涉及知识点: php对excel文件进行循环读取 php对字符进行ascii编码转化,将字符转为十进 ...
- PHP使用phpexcel读取excel文件
PHP读取excel文件 require("Classes/PHPExcel.php"); require("Classes/PHPExcel/IOFactory.php ...
- ThinkPHP3.2.3 PHPExcel读取excel插入数据库
版本 ThinkPHP3.2.3 下载PHPExcel 将这两个文件放到并更改名字 excel文件: 数据库表: CREATE TABLE `sh_name` ( `name` varchar(255 ...
- PHPExcel读取Excel文件的实现代码
<?php require_once 'PHPExcel.php'; /**对excel里的日期进行格式转化*/ function GetData($val){ $jd = GregorianT ...
- thinkphp用phpexcel读取excel,并修改列中的值,再导出excel,带往excel里写入图片
<?php class GetpriceAction extends AdministratorAction { // 文件保存路径 protected $savepath; // 允许上传的文 ...
- 利用PHPExcel读取excel文件
$filePath = "7788.xls"; $PHPExcel = new PHPExcel(); $PHPReader = new PHPExcel_Reader_Excel ...
- 解析Excel文件并把数据存入数据库
前段时间做一个小项目,为了同时存储多条数据,其中有一个功能是解析Excel并把其中的数据存入对应数据库中.花了两天时间,不过一天多是因为用了"upload"关键字作为URL从而导致 ...
随机推荐
- Bash 中的 _ 是不是环境变量
首先,我们想到的会是 export(等价于 declare -x)命令: $ export | grep 'declare -x _=' 没有找到,那么结论就是 _ 不是环境变量?当然没那么简单,否则 ...
- (Python)继承
面向对象的另一个特性是继承,继承可以更好的代码重用. 例如一个学校里面的成员有老师.学生.老师和学生都有共同的属性名字和年纪.但老师还有它自己的属性,如工资.学生也有它的属性,如成绩. 因此我们可以设 ...
- Linux 下源码包安装MariaDB
.8.5]# cd cmake-2.8.5 [root@zabbix_server cmake-2.8.5]# ./bootstrap [root@zabbix_server cmake-2.8.5] ...
- 第三篇、CSS样式简介
<!--1.行内样式 <p style="background-color:red;font-size:20px"> --> <!--2.页内样式 & ...
- jQuery AJAX load() 方法
jQuery load() 方法 jQuery load() 方法是简单但强大的 AJAX 方法. load() 方法从服务器加载数据,并把返回的数据放入被选元素中. 语法: $(selector). ...
- Android获取屏幕分辨率及DisplayMetrics简介
Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕的边界,以避免缩放造成的布局变形问题. 手机的分辨率信息是手机的一项重要信息,很好的是,Android ...
- java web简易网上书店项目系列,使用MVC模式(servlet+jstl+dbutils),开篇
一. 针对很多java web初学者入门困难的问题,笔者利用一个小型web项目,一步一步的展示java web开发方法,每一个章节引入一些java web开发的重点知识,让同学们可以将java web ...
- 【微服务No.2】polly微服务故障处理库
熔断.降级: 熔断:熔断就是我们常说的“保险丝”,意为当服务出现某些状况时,切断服务,从而防止应用程序不断地常识执行可能会失败的操作造成系统的“雪崩”,或者大量的超时等待导致系统卡死等情况,很多地方也 ...
- [PHP] php + phpstudy + phpstrom + xdebug + postman开启调试
主体 php + phpstudy + phpstrom + xdebug + postman + vue + chrome 使用的是前后端分离的开发方式,vue 在 webpack 通过代理进行请求 ...
- 【P2303】Longge的问题
题目大意:求\[\sum\limits_{i=1}^ngcd(n,i)\] 题解:发现 gcd 中有很多是重复的,因此考虑枚举 gcd. \[\sum\limits_{i=1}^ngcd(n,i)=\ ...