php上传excel表格并获取数据


Posted in PHP onApril 27, 2017

这个是最近需要做的一个功能,在网上也查看了很多相关的文章,基本上大同小异,在这里整理一下。

一:首先是html部分

<html>
<body>
<form action="upload_file.php" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file" /> 
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>

二:就是去接收和处理上传的文件了。php部分

//文件存放的路径
$save_path = "/upload/"; 

//文件存放的文件夹
$save_files = $this->geturl();

这个是以年月日新建的文件夹,仅供参考。

//先检查当前文件夹是否存在,如不存在,创建文件夹
function geturl()
{
$year = date('Y');
$month= date('m');
$day= date('d');

$str = $year.$month.$day;
if(strtoupper(substr(PHP_OS,0,3))=='WIN'){
$path = getcwd() . "/upload/".$str;
}else{
$path = "/mnt/erp/".$str;
}
if(!file_exists($path))//判断文件夹是否存在
{
mkdir($path);
}

//return $path."/";
return $str."/";
}

//这个是上传文件到需要保存的位置,
if (!@move_uploaded_file($_FILES[$upload_name]["tmp_name"], $save_path.$file_path)) {
$error = "error|上传文件错误.";
exit(0);
}

下面开始获取你上传的excel数据了

//获取上传表格的数据
$file_name = $save_path.$file_path;    //获取上传文件的地址名称
require_once APPPATH . 'views/IDC/config/PHPExcel.php'; 
require_once APPPATH . 'views/IDC/config/PHPExcel/IOFactory.php';
require_once APPPATH . 'views/IDC/config/PHPExcel/Cell.php';

$objReader = PHPExcel_IOFactory::createReader('excel2007'); //建立reader对象

$objPHPExcel = $objReader->load($file_name);
$sheet = $objPHPExcel->getSheet();
$highestRow = $sheet->getHighestDataRow(); // 取得总行数

$highestColumn_num = PHPExcel_Cell::columnIndexFromString($sheet->getHighestDataColumn()); //列数

//$columns = PHPExcel_Cell::getColumn($highestColumn_num);
$columns = array('A','B','C','D','E','F','G');

$arr_result = array();
$dealer_element = array();

for ($j = 2; $j <= $highestRow; $j++) {
for ($k = 0; $k < count($columns); $k++) {
//读取单元格
$value = $objPHPExcel->getActiveSheet()->getCell($columns[$k] . $j)->getValue();//这个就是获取每个单元格的值

$value = trim($value);
if (empty($value)) {
$value = NULL;
}
$dealer_element[$k] = $value;
//这里可以根据要求,做一些数据的验证
}

$arr_result[$j] = $dealer_element;
}
echo json_encode($arr_result);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木

PHP 相关文章推荐
多数据表共用一个页的新闻发布
Oct 09 PHP
《PHP边学边教》(02.Apache+PHP环境配置――上篇)
Dec 13 PHP
discuz authcode 经典php加密解密函数解析
Jul 12 PHP
对PHP语言认识上需要避免的10大误区
Jun 12 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
Aug 19 PHP
PHP常用技术文之文件操作和目录操作总结
Sep 27 PHP
PHP多进程编程总结(推荐)
Jul 18 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
Oct 19 PHP
php实现留言板功能
Mar 05 PHP
PHP反射学习入门示例
Jun 14 PHP
Laravel的加密解密与哈希实例讲解
Mar 24 PHP
PHP基于SMTP协议实现邮件发送实例代码
Apr 27 #PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
Apr 27 #PHP
PHP使用第三方即时获取物流动态实例详解
Apr 27 #PHP
利用PHPExcel实现Excel文件的写入和读取
Apr 26 #PHP
PHP基于接口技术实现简单的多态应用完整实例
Apr 26 #PHP
PHP基于简单递归函数求一个数阶乘的方法示例
Apr 26 #PHP
php编程实现简单的网页版计算器功能示例
Apr 26 #PHP
You might like
php中定时计划任务的实现原理
2013/01/08 PHP
PHP APC缓存配置、使用详解
2014/03/06 PHP
CakePHP框架Model函数定义方法示例
2017/08/04 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
PHP实现数组转JSon和JSon转数组的方法示例
2018/06/14 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
javascript编程起步(第七课)
2007/01/10 Javascript
jQuery 相关控件的事件操作分解
2009/08/03 Javascript
基于jQuery的计算文本框字数的代码
2012/06/06 Javascript
关于jQuery中的each方法(jQuery到底干了什么)
2014/03/05 Javascript
JavaScript函数模式详解
2014/11/07 Javascript
node.js开机自启动脚本文件
2014/12/24 Javascript
基于Marquee.js插件实现的跑马灯效果示例
2017/01/25 Javascript
JavaScript实现离开页面前提示功能【附jQuery实现方法】
2017/09/26 jQuery
vue项目实战总结篇
2018/02/11 Javascript
vue2 前端搜索实现示例
2018/02/26 Javascript
解决angularJS中input标签的ng-change事件无效问题
2018/09/13 Javascript
vue插槽slot的理解和使用方法
2019/04/03 Javascript
javascript实现自由编辑图片代码详解
2019/06/21 Javascript
JS实现字体背景跑马灯
2020/01/06 Javascript
Python的shutil模块中文件的复制操作函数详解
2016/07/05 Python
Python+OpenCV实现车牌字符分割和识别
2018/03/31 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
Python函数装饰器常见使用方法实例详解
2019/03/30 Python
django 使用 PIL 压缩图片的例子
2019/08/16 Python
Win10下python 2.7与python 3.7双环境安装教程图解
2019/10/12 Python
pytorch方法测试详解——归一化(BatchNorm2d)
2020/01/15 Python
python 19个值得学习的编程技巧
2020/08/15 Python
如何通过Python实现RabbitMQ延迟队列
2020/11/28 Python
运动鞋、足球鞋和慕尼黑球衣:Sport Münzinger
2019/08/26 全球购物
英国在线滑雪板和冲浪商店:The Board Basement
2020/01/11 全球购物
生物技术研究生自荐信
2013/11/12 职场文书
群众路线教育实践活动心得体会
2014/03/07 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
教师外出学习心得体会
2016/01/18 职场文书
调研报告的主要写法
2019/04/18 职场文书