首页 > 开发 > PHP > 正文

php上传excel表格并获取数据

2024-05-04 22:47:58
字体:
来源:转载
供稿:网友

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

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

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表