Laravel 5使用Laravel Excel實現Excel/CSV文件導入導出的功能詳解

      網友投稿 1393 2022-05-30

      https://mp.weixin.qq.com/s/Gel1eMHz6_eDWgDMaBQ5BQ

      注意:3.0版本只有導出export,沒有導入功能,create 函數已被修改為 download和sotre函數,建議使用2.0版本,我的是laravel5.6 用的是Maatwebsite/Laravel-Excel? 2.1版本

      這篇文章主要給大家介紹了關于在Laravel 5中如何使用Laravel Excel實現Excel/CSV文件導入導出功能的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下。

      1、簡介

      本文主要給大家介紹了關于Laravel 5用Laravel Excel實現Excel/CSV文件導入導出的相關內容,下面話不多說了,來一起看看詳細的介紹吧。

      Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel ,從而方便我們以優雅的、富有表現力的代碼實現Excel/CSV文件的導入和 導出 。

      該項目的GitHub地址是: https://github.com/Maatwebsite/Laravel-Excel。

      2、安裝&配置

      Laravel 5使用Laravel Excel實現Excel/CSV文件導入導出的功能詳解

      使用Composer安裝依賴

      本文我們將在Laravel中使用Laravel Excel簡單實現Excel文件的導入和導出。

      首先進入Laravel項目根目錄下使用Composer安裝依賴:

      composer require maatwebsite/excel=~2.0

      安裝后的設置

      在 config/app.php 中注冊服務提供者到 providers 數組:

      Maatwebsite\Excel\ExcelServiceProvider::class,

      同樣在 config/app.php 中注冊門面到 aliases 數組:

      'Excel' => Maatwebsite\Excel\Facades\Excel::class,

      如果想要對Laravel Excel進行更多的自定義配置,執行如下Artisan命令:

      php artisan vendor:publish

      執行成功后會在 config 目錄下生成一個配置文件 excel.php 。

      3、導出Excel文件

      為了演示Laravel Excel相關功能,我們為本測試創建一個干凈的控制器ExcelController.php:

      php artisan make:controller ExcelController --plain

      然后在routes.php中定義相關路由:

      Route::get('excel/export','ExcelController@export'); Route::get('excel/import','ExcelController@import');

      接下來我們先在ExcelController.php中定義export方法實現導出功能:

      sheet('score', function ($sheet) use ($cellData){ $sheet->rows($cellData); }); })->export('xls'); } }

      也有一個方法是直接從數組導入

      $sheet->fromArray($anyArray);

      如果你要導出csv或者xlsx文件,只需將export方法中的參數改成csv或xlsx即可。

      如果還要將該Excel文件保存到服務器上,可以使用store方法:

      Excel::create('學生成績',function($excel) use ($cellData){ $excel->sheet('score', function($sheet) use ($cellData){ $sheet->rows($cellData); }); })->store('xls')->export('xls');

      文件默認保存到storage/exports目錄下,如果出現文件名中文亂碼,將上述代碼文件名做如下修改即可:

      iconv('UTF-8', 'GBK', '學生成績')

      4、導入Excel文件

      我們將剛才保存到服務器上的Excel文件導入進來,導入很簡單,使用Excel門面上的load方法即可:

      //Excel文件導入功能 By Laravel學院 public function import(){ $filePath = 'storage/exports/'.iconv('UTF-8', 'GBK', '學生成績').'.xls'; Excel::load($filePath, function($reader) { $data = $reader->all(); dd($data); }); }

      load方法基于項目根路徑作為根目錄,同樣我們對中文標題進行了轉碼,否則會提示文件不存在。

      在瀏覽器中訪問http://laravel.app:8000/excel/import,頁面顯示如下:

      使用Laravel Excel導入文件

      當然,Laravel Excel還有很多其它功能,比如將Blade視圖導出為Excel或CSV,以及對導入/導出更加細粒度的控制,具體可參考其官方文檔:http://www.maatwebsite.nl/laravel-excel/docs

      Laravel PHP 網絡

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:我與HCIA職業認證訓練營的第一次親密接觸
      下一篇:軟件版本號規范與命名原則(node.js與package.json依賴包規范)
      相關文章
      青青草原精品国产亚洲av| 国产综合成人亚洲区| 亚洲乱码中文字幕手机在线| 色在线亚洲视频www| 亚洲喷奶水中文字幕电影| 亚洲AV天天做在线观看| 国产精品亚洲一区二区三区在线| 亚洲精品国产日韩无码AV永久免费网 | 亚洲伦另类中文字幕| 亚洲伊人久久大香线蕉综合图片| 亚洲av无码天堂一区二区三区 | 亚洲AV无码一区二区乱孑伦AS | 亚洲欧洲一区二区三区| 亚洲午夜无码片在线观看影院猛| 亚洲国产午夜中文字幕精品黄网站 | 亚洲人成国产精品无码| 亚洲国产午夜中文字幕精品黄网站 | 久久亚洲色一区二区三区| 国产性爱在线观看亚洲黄色一级片 | 亚洲va国产va天堂va久久| 亚洲AV日韩精品久久久久| 久久91亚洲人成电影网站| 久久91亚洲人成电影网站| 亚洲成AV人片一区二区密柚| 久久精品国产亚洲沈樵| 亚洲成AV人片在线观看| 亚洲精品资源在线| 亚洲五月综合缴情婷婷| 亚洲精品无码专区在线播放| 亚洲av最新在线观看网址| 亚洲av日韩aⅴ无码色老头| 亚洲AV无码乱码在线观看| 亚洲中文字幕无码一区| 亚洲毛片在线观看| 国产精品亚洲片夜色在线 | 亚洲AV无码成人精品区蜜桃| 亚洲免费视频在线观看| 亚洲乱人伦精品图片| 亚洲精品美女久久7777777 | 亚洲精品无码久久毛片| 亚洲精品无码久久久久去q|