1. 程式人生 > 其它 >php7.4 下使用phpExcel

php7.4 下使用phpExcel

前言

  php7.4後不支援 array{} 這種形式陣列取值

  參考官方文件:7.4 版本的向後不相容更改,非陣列的陣列樣式訪問,現在,嘗試將 null,bool,int,float 或 resource 型別的值用作陣列 ( 例如 $null[“key”] ) 會產生一個通知。

  修改後的PHPExcel連結:https://pan.baidu.com/s/1s7EtMKhS1rvhdurCYY5yIg  提取碼:vx32

//簡單使用例子:
//引入類庫
include "../phpExce/Classes/PHPExcel/IOFactory.php";
//$inputFileName = mb_convert_encoding('賬號名單.xlsx','GBK','UTF-8');
$inputFileName = 'test.xlsx'; try { $inputFileType = PHPExcel_IOFactory::identify($inputFileName); $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objPHPExcel = $objReader->load($inputFileName); } catch(Exception $e) { echo "讀取失敗"; } $sheet = $objPHPExcel->getSheet(0
);// 0即第一個表 $highestRow = $sheet->getHighestRow();// 取得總行數 $highestColumn = $sheet->getHighestColumn(); // 取得總列數 // 獲取excel檔案的資料,$row=2代表從第二行開始獲取資料 for ($row = 2; $row <= $highestRow+1; $row++){ // rowData是一行的資料,遍歷出來就是一列資料,字母A代表遍歷所有列的資料,字母B開始就是單獨遍歷那一列的資料,我這裡填寫的C就是獲取C列的資料 $rowData = $sheet->rangeToArray('
A' . $row . ':' . $highestColumn . $row, NULL, TRUE, FALSE); print_r(mb_convert_encoding($rowData,'GBK','UTF-8')); }