クマの手も借りたい
茶トラネコ(@kumanotemo)です。上場を控えたITベンチャーを2社も退職してフリーランスの道を選んだ放浪エンジニアです。
PHP

LaravelでExcelのインポートとエクスポートを行う

Laravel には PHPExcel のラッパークラスライブラリが提供されています。

その名も「Laravel Excel」

しかし、PHPExcel のサポートが終了し、現在は後継の PhpSpreadsheet が主流となっているため、Laravel Excel もバージョン 2.1 系から 3.0 系へと移行が進められています。

そもそも Laravel Excel のバージョン 3.0 系ではエクスポートの機能しか提供されておらず、インポートの操作ができません。

今回はその問題解決に踏み込んでみます。

仕方なく2.1系を使う

Laravel Excel の git ブランチを見ても新たに 3.1 が開発されている形跡はなく、まだインポート機能の提供は期待できません。

開発者とのやり取りを見ても、今の段階ではインポート機能の提供についてあまり前向きな発言が見受けられませんし、インポート機能がないとパッケージの意味がないじゃないかという意見も出ています。

よって、結論としてはバージョン 2.1 系を使うしかありません。

また、Laravel5.5 の場合は 2.1 の初期バージョンでは非対応なので、2.1 系の最新バージョンを使う必要があります。

$ composer require "maatwebsite/excel:~2.1.0"

3.0系を使う場合

エクスポートの機能だけで十分という方は、ぜひ 3.0 系を使いましょう。

2.1 系の時よりもモデルとの連携がしやすい印象があります。

3.0 系の要件は以下の通りなので、古い PHP や Laravel のバージョンを使っている場合はバージョンアップの必要があります。

phpexcel -> PhpSpreadsheet

Requirements
PHP: ^7.1
Laravel: ^5.5
PhpSpreadsheet: ^1.2
PHP extension php_zip enabled
PHP extension php_xml enabled
PHP extension php_gd2 enabled
現場のプロから学ぶSEO技術

SEO について詳しくないけどこれから学んでみたい方。

これまでの小手先の SEO に対する技術には詳しいけど、マーケティングやソーシャル要素を組み合わせた今時の SEO をもう一度勉強してみたい方にオススメです。

あなたにオススメ