当前位置: 首页 > 编程笔记 >

php上传excel表格并获取数据

申屠锦
2023-03-14
本文向大家介绍php上传excel表格并获取数据,包括了php上传excel表格并获取数据的使用技巧和注意事项,需要的朋友参考一下

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

一:首先是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);

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持小牛知识库

 类似资料:
  • 本文向大家介绍Nodejs获取网络数据并生成Excel表格,包括了Nodejs获取网络数据并生成Excel表格的使用技巧和注意事项,需要的朋友参考一下 Nodejs的模版中有很多关于Excel表格的,这里我简单介绍一下我使用过的一个模块的使用。 首先,先安装Excel的模块: npm install node-xlsx 然后,在代码中引入模块: var xlsx = require('node-x

  • 我正在尝试将excel文件上传到servlet,从中获取数据,然后将这些数据发送到数据库。 我被困在最开始:上传文件。 为了从文件中获取数据,我想使用Apache POI,下面是我的代码: 这段代码的输出是: UI部分是SAPUI5框架,在这里。 我看了这个和这个线索,但对我没有帮助。 我如何让这个servlet工作?

  • 您好,这里的场景是我想在页面的文本字段中输入一些值,在此之前,我需要使用xpath查找文本字段。 所以在这里,我在Excel表中有这些字段的值和xpath。如何让上面的代码工作?两个片段都不起作用或显示任何错误。 如能回复,我们将不胜感激。

  • 本文向大家介绍Springboot上传excel并将表格数据导入或更新mySql数据库的过程,包括了Springboot上传excel并将表格数据导入或更新mySql数据库的过程的使用技巧和注意事项,需要的朋友参考一下 本文主要描述,Springboot-mybatis框架下上传excel,并将之导入mysql数据库的过程,如果用户id已存在,则进行更新修改数据库中该项信息,由于用到的是前后端分离

  • 我目前正在为我的项目使用谷歌表格。我有一个包含多个工作表的Excel工作簿。此处的任务是创建特定时间段内所有工作表的汇总格式。 输出应如下所示: 我目前的问题是从具有相同标识符的多个行的工作表中获取数据。这是工作表编号1,我已经从这里获得了我需要的所有数据: 但在工作表2中,我需要能够从这张工作表中提取状态以进行摘要: 我尝试使用带有VLOOKUP函数的IF ELSE语句,但无济于事。 (注意:由

  • 本文向大家介绍python3 读取Excel表格中的数据,包括了python3 读取Excel表格中的数据的使用技巧和注意事项,需要的朋友参考一下 需要先安装openpyxl库 通过pip命令安装: pip install openpyxl 源码如下: 总结 以上所述是小编给大家介绍的python3 读取Excel表格中的数据,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的