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 ...
- Yii2使用PHPExcel读取excel
个人使用过程中保存一些使用PHPExcel的经验,以便后来翻阅:与PHP的Yii框架结合,可以轻松使用.而且根本不用网上所说的修改Yii的自动加载文件等方法.具体使用方法:下载phpoffice ht ...
- 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 ...
随机推荐
- c# list排序的三种实现方式
用了一段时间的gridview,对gridview实现的排序功能比较好奇,而且利用C#自带的排序方法只能对某一个字段进行排序,今天demo了一下,总结了三种对list排序的方法,并实现动态传递字段名对 ...
- Linux下配置xampp
How do I install XAMPP?Choose your flavor for your linux OS, the 32-bit or 64-bit version. Change th ...
- IOS键盘的相关设置(UITextfield)
一.键盘风格 UIKit框架支持8种风格键盘. typedef enum { UIKeyboardTypeDefault, // 默认键盘:支持所有字符 UIKeyboa ...
- 翻译「C++ Rvalue References Explained」C++右值引用详解 Part5:右值引用就是右值吗?
本文为第五部分,目录请参阅概述部分:http://www.cnblogs.com/harrywong/p/cpp-rvalue-references-explained-introduction.ht ...
- 洛谷P2320 鬼谷子的钱袋
P2320 06湖南 鬼谷子的钱袋 171通过 480提交 题目提供者xmyzwls 标签各省省选 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 题目有误 数据需要特判 评测系统太神了 题目 ...
- 终于解决了PHP调用SOAP过程中的种种问题。(转)
最近在做公司和第三方的一个合作项目,需要调用统一验证接口和统一支付接口.由于牵涉公司机密,所以我要单独写一层PHP的接口给第三方用.前面那个验证接口主要卡在了des加密的方式上,这个有时间再说.这篇主 ...
- Eclipse 安装Groovy插件
摘自: http://blog.csdn.net/boonya/article/details/45399901 步骤一: 下载eclipse4.3.0,地址:http://www.eclipse.o ...
- leetcode 9
判断一个数是否为回文数,不利用额外的空间. 思路:将数反转后进行比较. 注意:反转之后数越界的判断,若越界,则不是回文数:负数不是回文数: 代码如下: class Solution { public: ...
- 关于解决pyinstaller2.1将.py打包成exe文件在中文目录下不能执行的问题
关于解决pyinstaller2.1将.py打包成exe文件在中文目录下不能执行的问题 这个问题困扰我好久了,今天终于非常偶然的在http://www.v2ex.com/t/113856#reply1 ...
- Android带返回值的窗口跳转
1.AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest ...