Laravelで汎用性のある共通クラス(ライブラリ)を作る方法

laravel-libraries
  • URLをコピーしました!

Laravelは便利な機能を数多く持っていますが、どうしても足りない場合は、ヘルパ関数のように汎用性のある共通関数を作りたくなります。
しかし、共通クラスをどこに書いてどのように呼び出すか悩んでいる方に、(マイ)ベストプラクティスをご紹介します!

目次

ライブラリとして追加する

結局はどこに書いても同じなのですが、フレームワークとは別に自分が作ったものとして管理したいので、

というフォルダを作成してその中に作っていきます。
app/libsでも良いかな?フォルダ名は任意です!)
この記事では、他の方が書いてあるような、ファサード作ったり、サービスプロバイダ作るようなややこしいことをしません。
やってもconfig/app.phpのエイリアスに追加するくらいなら良いと思いますが、今回はそれすらも省きます。

独自クラスを作成する

コントローラのように普通にクラスを作成していきます。
例として、

というファイル名で作成します。
内容は以下の通りです。

文字列が’foo’であるかを調べる単純な関数ですね。

共通関数を呼び出す

次に呼び出しです。
コントローラで呼び出してみましょう。

ポイントも何もありませんね。
普通にuseして使う、それだけです。
なぜ、このように単純な書き方にならないのだろうか、何か弊害があるのだろうかわかりません。
もし知っていればコメントください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次