php开发中Excel导入功能的具体实现方法

对于在做php开发项目中,一般的项目设计到最多用到的是Excel的导出功能,而对于其导入功能一般是很少见的,而且对于php开发中Excel的导入功能也要比导出功能开发起来更困难一些,那么今天就来分享一下php开发中Excel导入功能的具体实现步骤:

  1、首先将下载下来的PHP Excel插件代码放入项目/Thinkphp/Extend/Vendor/下;

  2、在模板添加导入功能;

  html代码实现如下:
<form action="{:U(‘Turntable/imports‘)}" enctype="multipart/form-data" method="post">
<input type="file" name="photo" />
<input type="submit" value="导入数据">
</form>

3、控制器调用插件;

php代码如下:

public function imports(){
ini_set(‘memory_limit‘,‘1024M‘);
import(‘ORG.Net.UploadFile‘);
$upload = new UploadFile();
$upload->maxSize = 3145728000 ;// 设置附件上传大小
$upload->allowExts = array(‘xlsx‘,‘xls‘);// 设置附件上传类型
$upload->savePath = ‘./Public/Uploads/xslx/‘;//
// $upload = new \Think\Upload($config);
if (!$upload->upload()) {
error($upload->getErrorMsg());

        }else{
             $info =  $upload->getUploadFileInfo();
        }
        vendor("PHPExcel.PHPExcel");

        $file_name= $upload->savePath.$info[0][‘savename‘];

        $extension = strtolower(pathinfo($file_name, PATHINFO_EXTENSION));//判断导入表格后缀格式
        if ($extension == ‘xlsx‘) {
        $objReader =\PHPExcel_IOFactory::createReader(‘Excel2007‘);
        $objPHPExcel =$objReader->load($file_name, $encode = ‘utf-8‘);
        } else if ($extension == ‘xls‘){
        $objReader =\PHPExcel_IOFactory::createReader(‘Excel5‘);
        $objPHPExcel =$objReader->load($file_name, $encode = ‘utf-8‘);
        }
        $sheet =$objPHPExcel->getSheet(0);
        $highestRow = $sheet->getHighestRow();//取得总行数
        $highestColumn =$sheet->getHighestColumn(); //取得总列数

        for ($i = 2; $i <= $highestRow; $i++) {

        $data[‘code‘] =$objPHPExcel->getActiveSheet()->getCell("B" . $i)->getValue();

        //看这里看这里,这个位置写数据库中的表名

        D(‘codes‘)->add($data);
        }
        $this->success(‘导入成功!‘);

}

  好了,相信看到这里大家就明白如何去做了,那么如果还有同学不知道如何去做的话,或者尝试之后发现有问题的话,都可以留言咨询,我们可以共同讨论学习。

  本文由专业的郑州app开发公司燚轩科技整理发布,原创不易,尊重编者,如需转载请注明出处!

原文地址:http://blog.51cto.com/13686158/2153328

时间: 2024-10-29 19:06:53

php开发中Excel导入功能的具体实现方法的相关文章

Java中Excel导入功能实现、excel导入公共方法_POI -

这是一个思路希望能帮助到大家:如果大家有更好的解决方法希望分享出来 公司导入是这样做的 每个到导入的地方 @Override public List<DataImportMessage> materialDataImport2(byte[] fileBytes, String fileName) { //return DataImport(fileBytes, fileName, "inv_m"); File file = FileUtils.getFileFromByte

开发指南专题十五:JEECG微云快速开发平台EXCEL导入导出

 开发指南专题十五:JEECG微云快速开发平台EXCEL导入导出 14.EXCEL导入导出 Excel的导入导出抽取通用功能,简化大家对POI的操作,对实体对象进行简单的注解配置就可以完成导入导出,模板的使用更是可以让打造漂亮的Excle报表,从而使大家从重复的工作中解脱出来,更加关注与业务的处理. 14.1注解介绍    注解名 作用对象 描述 是否必须 Excel 字段 对Excel字段的cell属性设置 是 ExcelCollection 字段 对集合对象进行标记表示一对多导出 否 E

解析大型.NET ERP系统 设计通用Microsoft Excel导入功能

做企业管理软件很难避免与Microsoft Excel打交道,常常是软件做好了,客户要求说再做一个Excel导入功能.导入Excel数据的功能的难度不大,从Excel列数据栏位的取值,验证值,再导入到数据库表中.然而一直是在做重复工作,写过不计其数的Excel导入程序,每次只是满足于问题解决,后来终于找到一个方法,实现通用的Excel数据导入. 设计通用的Excel导入功能,第一个实现要求是不能依赖Excel,客户的电脑或服务器很有可能没有安装Excel,所以微软的Office Interop一

EBS OAF开发中如何实现功能页签(Global Tab)

(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 功能页签的实现不需要任何编码,和subTab不一样,可以和subTab共存.其主要实现是靠配置,步骤如下: 1.      建立两个OAF页面的Function. 2.      为每个function分别建立一个HTML Tab 类型的菜单,并把相应的Function加入到菜单中,但不要声明Prompt,如下: 3.      建立一个Home Page类型的菜单,并把上面建立的两个HTM

网页开发中你不知道的一些功能

在网页开发中我们可能为完成一些特效感到苦恼,特别是JS不好的孩子们,下面整理的一些方法能使你起到事倍功半的效果. 进入网页时淡入淡出的效果 1 <meta http-equiv="Page-Exit"; content="blendTrans(Duration=1.0)"> 在头部head之间加入此代码,你会发现点击链接的时候,网页现实的是淡入淡出的效果.此代码含义如下:Page-Exit”(离开网页).”Site- Enter”(进入站点).”Site

JAVA中EXLS导入功能实现 - 代码

JAVA中EXLS导入功能实现 - 代码: 基于SSH框架下导入的流程及解析: private File file; public synchronized File getFile() { return file; } public synchronized void setFile(File file) { this.file = file; } /** * 导入exls 并解析 * @throws Exception */ public void inputfile() throws Ex

java新手在实际开发中所遇到的问题及解决方法小结,(持续更新遇到的问题)

?从事开发一年有余,想到自己初入公司时的困窘,在此把我记忆中在实际开发中所遇到的问题做一总结性的小结,为自己以后方便查阅,以及后来者遇到相同问题时解决更加方便快捷,希望大家集思广益把自己遇到的问题及解决方法写出来,添砖加瓦.为后来者给予一点帮助! 实用案例 如何使用Java实现汉诺塔问题 Java中定时器的使用方法 Java打印杨辉三角的具体实现代码 Java中如何实现分页功能 Java读取大文件如何高效率 Java中生成随机数的几种方法 Java zip压缩单个文件实现方法 如何计算Java对

记一次SpringBoot 开发中所遇到的坑和解决方法

记一次SpringBoot 开发中所遇到的坑和解决方法 mybatis返回Integer为0,自动转型包空指针异常 当我们使用Integer去接受数据库中表的数据,如果返回的数据中为0,那么Integer便为null,这时候将Interger自动转型为int,则会出现空指针异常 这个时候,我们可以在Service层对Integer的数据进行判断,如果为空,就把它复制为0 // 在pojo中,如果Integer canJoinNun为null 就把值设置为0 if (publishMsg.getC

Atitit 软件开发中&#160;瓦哈比派的核心含义以及修行方法以及对我们生活与工作中的指导意义

Atitit 软件开发中 瓦哈比派的核心含义以及修行方法以及对我们生活与工作中的指导意义 首先我们指明,任何一种行动以及教派修行方法都有他的多元化,只看到某一方面,就不能很好的评估利弊,适不适合自己使用,犹如盲人摸象,虽然都对,但是并不完整 1. 瓦哈比教派的核心思想1 1.1. 归一化,反对多神..反对邪教与不良的 修炼方式1 1.2. 规范化,标准化最佳实践 圣训立国,依法治国1 1.3. 主张整肃社会风尚,净化人们的"心灵1 1.4. 倡导团结,团队建设1 1.5. 回归传统,轻量化1 2