PhpOffice實現Excel表格匯入的解耦方法

前言:

在業務中開發中,表格的匯入匯出功能很常見。但是這裡主要是使用PhpOffice類庫介紹實現匯入表格資料的功能。

衝突:

大部分的匯入功能,就是透過點選按鈕上傳一張表格,然後後臺讀取表格資料根據業務整理後直接插入到資料庫,最後再返回給前端。但是如果表格資料龐大,業務邏輯複雜的時候,就會導致匯入那一塊很臃腫不好維護。

解決方法:

處理方式是把匯入與業務資料插入分離,所以在二者之間新增一個佇列就可以了。匯入只負責將表格資料存入佇列。業務部分可以是單獨的系統,最後就是消費佇列中的資料了。這樣一來,不但提升了匯入速度,而且還讓匯入與系統解耦,不會因為異常而影響到其他業務。

編碼:

1。 下載PhpOffice。

composer repuire phpoffice/phpspreadsheet

2。 匯入匯出程式碼。

3。 抽取指定的欄位格式化Excel資料。

4。 匯入部分,上傳介面。

5。 消費業務邏輯。