天天看點

php讀取excel檔案資料

PHP讀取excel檔案資料一般用phpexcel插件,但這個插件目前已經不再維護,改用phpspreadsheet,可以從github上clone。

該插件讀取excel資料還是很友善的,代碼如下:

require_once  '.../vendor/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php';

class ReadExcelController extends Controller
{
    private $file_path;

    public function actionIndex()
    {
        $this->file_path = 'test.xlsx';

        //讀取excel   
        $objPHPExcel = \PHPExcel_IOFactory::load($this->file);
        //讀取excel檔案中的第一個工作表
        $currentSheet = $objPHPExcel->getSheet(0);
        //取得最大列數
        $column = $currentSheet->getHighestColumn();
        //取得最大行數
        $row = $currentSheet->getHighestRow();

        for($i = 2; $i <= $row; ++$i) {
            for ($j = 'A'; $j <= $column; ++$j) {
                $data[$i-2][] = $currentSheet->getCell($j.$i)->getValue();
            }
        }

        print_r($data); die;
    }
}
           

檔案引入路徑我是随便寫的,這個主要取決于該程式所在項目中位置。

主要引入PHPExcel_IOFactory()這個類就可以了,最終讀取的資料就儲存在數組$data裡,可以列印驗證,也可以直接存進資料庫。