今回は、laravel5、laravel6、laravel7、laravel8のアプリケーションで、Helper Facadeを使って自作のグローバルヘルパー関数を作成する方法についてご紹介します。グローバルな関数を定義することで、プロジェクト内のすべてのファイルからヘルパー関数にアクセスすることができます。
このチュートリアルでは、Laravelフレームワークでゼロからグローバルヘルパー関数を作成する方法について説明します。
ヘルパー関数を作成するためのカスタムヘルパーファサードを作成します。ヘルパーファサードを作成するには、以下のいくつかのステップを踏むだけです。
1) Laravel新しいアプリケーションのインストール
2) ヘルパークラスの作成
3) ヘルパークラスの登録
4) ヘルパークラスを使用する
Laravel新しいアプリケーションのインストール
以下のコマンドを使用してLaravelアプリケーションを新規に作成します。
composer create-project --prefer-dist laravel/laravel blog
ヘルパークラスを作成する
このステップでは、Appディレクトリに “Helpers “ディレクトリを新規に作成します。Helpersディレクトリを作成したら、Helper.phpファイルを作成し、以下のコードを記述します。
app/Helpers/Helper.php
<?php namespace App\Helpers; class Helper { public static function homePageURL() { return url('/'); } }
ヘルパークラスを登録する
設定ファイルにHelperクラスをFacadeとして登録します。
config/app.php
.... 'aliases' => [ .... 'Helper' => App\Helpers\Helper::class, ]
ヘルパークラスを使用する
以上で完了です。ビュー(Blade)やコントローラーから、上記の静的メソッドを持ったクラスを呼び出して使用します。
Blade
<p>{{ Helper::homePageURL() }}</p>
コントローラー
<?php namespace App\Http\Controllers; use Helper; class ExampleController extends Controller { public function index() { $homePageURL = Helper::homePageURL(); } }
この記事では、Helper Facadeを使って自作のグローバルヘルパー関数を作成する方法について紹介しました。