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 相关文章推荐
php xfocus防注入资料
Apr 27 PHP
php压缩多个CSS为一个css的代码并缓存
Apr 21 PHP
PHP读取xml方法介绍
Jan 12 PHP
PHP 获取远程文件大小的3种解决方法
Jul 11 PHP
php自动获取关键字的方法
Jan 06 PHP
php实现简单文件下载的方法
Jan 30 PHP
laravel 5 实现模板主题功能
Mar 02 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
Mar 25 PHP
PHP如何使用Memcached
Apr 05 PHP
微信企业转账之入口类分装php代码
Oct 01 PHP
PHP实现二维数组按照指定的字段进行排序算法示例
Apr 23 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猜单词游戏
2015/09/29 PHP
PHP高精确度运算BC函数库实例详解
2017/08/15 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
jquery 打开窗口返回值实现代码
2010/03/04 Javascript
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
js密码强度检测
2016/01/07 Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
2016/05/27 Javascript
AngularJS ng-change 指令的详解及简单实例
2016/07/30 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
mui上拉加载功能实例详解
2017/04/13 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
jQuery UI Draggable + Sortable 结合使用(实例讲解)
2017/09/07 jQuery
vue 动态改变静态图片以及请求网络图片的实现方法
2018/02/07 Javascript
vue-router 起步步骤详解
2019/03/26 Javascript
jquery.pager.js实现分页效果
2019/07/29 jQuery
简介Python中用于处理字符串的center()方法
2015/05/18 Python
Python的装饰器用法学习笔记
2016/06/24 Python
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
python分块读取大数据,避免内存不足的方法
2018/12/10 Python
Python代码使用 Pyftpdlib实现FTP服务器功能
2019/07/22 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
2019/07/23 Python
python 字典访问的三种方法小结
2019/12/05 Python
sklearn+python:线性回归案例
2020/02/24 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
2020/04/22 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
Python虚拟环境venv用法详解
2020/05/25 Python
CSS3+js实现简单的时钟特效
2015/03/18 HTML / CSS
使用CSS3设计地图上的雷达定位提示效果
2016/04/05 HTML / CSS
HTML里显示pdf、word、xls、ppt的方法示例
2020/04/14 HTML / CSS
Lucene推荐的分页方式是什么?
2015/12/07 面试题
房地产财务管理制度
2014/02/02 职场文书
车队司机个人自我鉴定
2014/04/17 职场文书
总经理司机岗位职责
2015/04/10 职场文书
朋友聚会开场白
2015/06/01 职场文书
怎样写家长意见
2015/06/04 职场文书
python 算法题——快乐数的多种解法
2021/05/27 Python