質問: Laravelのビューはbladeを使っており、 ビューの中で自分の作ったライブラリのメソッドを直接呼び出したいのですが、 やり方分かるでしょうか? 例えば標準で呼び出されている認証関連の関数で下記のようなものがありますが、 普通にビューで直接呼び出しできているので、 可能だとは思うのですが設定方法などが分かりません。 (正確に言うと下のやつは関数とは言わないかもしれませんが・・・) ``` Auth::user()->name ```
回答: いくつか方法はあります。 そのビューや、限定した機能内で利用するライブラリであれば`@inject`ディレクティブがあります。 ``` @inject('myLib', 'App\Libs\MyLibrary') {{ $myLib->myMethod() }} ``` 参考:サービス注入 一方、呼び出したいライブラリがアプリ全体で利用するような大きな枠組みの場合は サービスコンテナへの追加、ファサードクラスの作成をした後に `app.php`の`aliases`に加えてから使う方がいいかと思います。 (speed_star777さんが例で出している`Auth`などはこの形ですね) 使えるようにするまでが少し手間ですが、以下のサイト等が参考になると思います。 参考:ファサードとは 参考:公式(ファサード)