php上傳excel表格并獲取數(shù)據(jù)
更新時間:2017年04月27日 09:29:48 作者:Miss|ing
本篇文章主要介紹了php上傳excel表格并獲取數(shù)據(jù)的相關(guān)知識。具有很好的參考價值。下面跟著小編一起來看下吧
這個是最近需要做的一個功能,在網(wǎng)上也查看了很多相關(guān)的文章,基本上大同小異,在這里整理一下。
一:首先是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(); 這個是以年月日新建的文件夾,僅供參考。 //先檢查當前文件夾是否存在,如不存在,創(chuàng)建文件夾 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數(shù)據(jù)了
//獲取上傳表格的數(shù)據(jù) $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(); // 取得總行數(shù) $highestColumn_num = PHPExcel_Cell::columnIndexFromString($sheet->getHighestDataColumn()); //列數(shù) //$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; //這里可以根據(jù)要求,做一些數(shù)據(jù)的驗證 } $arr_result[$j] = $dealer_element; } echo json_encode($arr_result);
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家
您可能感興趣的文章:
- PHP中創(chuàng)建和編輯Excel表格的方法
- PHPExcel實現(xiàn)表格導出功能示例【帶有多個工作sheet】
- Thinkphp5+PHPExcel實現(xiàn)批量上傳表格數(shù)據(jù)功能
- 使用PHPExcel實現(xiàn)數(shù)據(jù)批量導出為excel表格的方法(必看)
- php通過PHPExcel導入Excel表格到MySQL數(shù)據(jù)庫的簡單實例
- thinkPHP導出csv文件及用表格輸出excel的方法
- php導出word文檔與excel電子表格的簡單示例代碼
- PHP處理excel cvs表格的方法實例介紹
- PHP5.6讀寫excel表格文件操作示例
相關(guān)文章
php中call_user_func函數(shù)使用注意事項
這篇文章主要介紹了php中call_user_func函數(shù)使用注意事項,較為詳細的講述了call_user_func函數(shù)的用法實例與注意事項,具有一定的參考借鑒價值,需要的朋友可以參考下2014-11-11解析mysql left( right ) join使用on與where篩選的差異
本篇文章是對mysql left( right )join使用on與where篩選的差異進行了詳細的分析介紹,需要的朋友參考下2013-06-06php數(shù)組函數(shù)序列之a(chǎn)rray_flip() 將數(shù)組鍵名與值對調(diào)
array_flip() 函數(shù)將使數(shù)組的鍵名與其相應(yīng)值調(diào)換,即鍵名變成了值,而值變成了鍵名2011-11-11