ThinkPHP5.1 Excel 表的匯入匯出操作 (PHPExcel)

moTzxx發表於2019-05-09
  • 這兩天在開發快遞查詢的功能時,涉及到了 Excel表匯入MySQL 的操作,為了方便後期的快捷使用,在此整理一下 PHPExcelexcel 表匯入匯出的程式碼解決步驟,希望能幫到有需要的道友們...

框架:ThinkPHP5.1
類庫:PHPExcel
技能:Composer,MySql

第一種方式為:使用 Composer 進行安裝;
第二種方式為:直接到【Github·PHPOffice/PHPExcel】下載源包
後者需要注意,將壓縮包解壓後放到vendor目錄,並且注意路徑的正確引入
此處,只做第一種方式的指導參考 [建議學會Composer的簡單使用,實在是太方便了]

  • 進入專案目錄,輸入命令: composer require phpoffice/phpexcel

    安裝成功後,會注意到專案的vendor目錄下,多出了一個phpoffice資料夾

除了參考我展示的步驟,也要注意下我的程式碼註釋哦!

①. excel 檔案的整理

首先要求用來匯入MySQL 資料表的 excel檔案中的內容要規整,對應於你的資料表

  • 鄙人將其放置於目錄public\cms\file\bird_express.xlsx

以我要操作的 excel表為例,(==資料簡單,可舉一反三,自由擴充==):

②. 建立目標資料表

  • 以我的簡答測試為例,表格設計如下:

    ③. MTPhpExcel類的使用

  • 首先引入所提供原始碼中的 MTPhpExcel.php
    下圖即為我建立的 ==測試入口==,主要目的就是為了呼叫核心方法 readExcelFileToArray()
    在這裡插入圖片描述

    核心處理方法 readExcelFileToArray() 原始碼見附錄

  • 執行程式碼後的結果如下:
  • 同理,我設計了一個測試方法,主要目的就是為了呼叫核心方法 outputDataToExcelFile()

    核心處理方法 outputDataToExcelFile() 原始碼見附錄

  • 執行程式碼後,可以得到如下的一個 excel 表:
  • 【溫馨提示:】
    1. 為了程式碼參考方便,鄙人儘量使其簡潔化
    所以如果對於某列資料需要字型加粗、居中、變大等各種操作,可自行擴充套件
    2. 當前程式碼,未做圖片格式的展示處理
    如有需要可閱讀 phpexcel 文件規則,根據目標資料對應性處理即可 ...

    >>>原始碼下載>>>

  • 主要使用的就是其中的 MTPhpExcel

☛ 參考文章

相關文章