PhpOffice實現Excel表格匯入的解耦方法
前言:
在業務中開發中,表格的匯入匯出功能很常見。但是這裡主要是使用PhpOffice類庫介紹實現匯入表格資料的功能。
衝突:
大部分的匯入功能,就是透過點選按鈕上傳一張表格,然後後臺讀取表格資料根據業務整理後直接插入到資料庫,最後再返回給前端。但是如果表格資料龐大,業務邏輯複雜的時候,就會導致匯入那一塊很臃腫不好維護。
解決方法:
處理方式是把匯入與業務資料插入分離,所以在二者之間新增一個佇列就可以了。匯入只負責將表格資料存入佇列。業務部分可以是單獨的系統,最後就是消費佇列中的資料了。這樣一來,不但提升了匯入速度,而且還讓匯入與系統解耦,不會因為異常而影響到其他業務。
編碼:
1。 下載PhpOffice。
composer repuire phpoffice/phpspreadsheet
2。 匯入匯出程式碼。
3。 抽取指定的欄位格式化Excel資料。
4。 匯入部分,上傳介面。
5。 消費業務邏輯。