Laravel Excel2.1がEOLになってちょっと困ったはなし(load関数の代替が存在しない)
先日(2018年5月)、バージョン3.0がリリースされ、2系がEOLとなりました。バージョン3.0はLaravel Newsにもあるとおり破壊的なバージョンアップとなっており、多くの場合コードの書き換えが必要になります。
Version | Laravel Version | Php Version | Support |
---|---|---|---|
2.1 | <=5.6 | <=7.0 | EOL on 15-5-2018 |
3.0 | ^5.5 | ^7.0 | New features |
さっそく、Laravelプロジェクトでライブラリをバージョンアップしてみました。
composerでライブラリを管理しているため、バージョンを書き換えてアップデートしたところ一部の処理が動かなくなりました。
composerでライブラリを管理しているため、バージョンを書き換えてアップデートしたところ一部の処理が動かなくなりました。
1. Excelファイル作成/ダウンロード
Upgrade Guideより。
無名関数の記載が必要なくなったため、実装がシンプルになり、処理が再利用しやすくなりました。
Excel::create() is removed and replaced by Excel::download/Excel::store($yourExport);ということで、createメソッドが利用できなくなったため、呼び出している箇所をdownload/storeに置き換えました。
無名関数の記載が必要なくなったため、実装がシンプルになり、処理が再利用しやすくなりました。
2. Excelファイルインポート
なんと、インポートできなくなりました。困った
Upgrade Guideより。Excel::load() is removed and will not be re-added until 3.1バージョン3.1で再追加される可能性があるようです。
https://github.com/Maatwebsite/Laravel-Excel/issues/1581