Open5
Laravelのviewヘルパーの仕組みについてみていくやつ
環境
ツール | バージョン |
---|---|
Laravel | 8.30.1 |
まずはvendor/laravel/framework/Foundation/helpers.php
のview()
を見る。
884 if (! function_exists('view')) { 885 /**
886 * Get the evaluated view contents for the given view.
887 *
888 * @param string|null $view
889 * @param \Illuminate\Contracts\Support\Arrayable|array $data
890 * @param array $mergeData
891 * @return \Illuminate\Contracts\View\View|\Illuminate\Contracts\View\Factory
892 */
893 function view($view = null, $data = [], $mergeData = [])
894 {
895 $factory = app(ViewFactory::class);
896
897 if (func_num_args() === 0) {
898 return $factory;
899 }
900
901 return $factory->make($view, $data, $mergeData);
902 }
まずは馬鹿正直に上から見ていく。
884行目からview
というメソッドが存在しなければviewヘルパメソッドが使えるらしい。つまり軽々しくviewをメソッド名に使ってしまうとこのヘルパメソッドが使えなくなってしまうのかな。
次はPHPDocの@return
を見ると、返り値は\Illuminate\Contracts\View\View
または\Illuminate\Contracts\View\Factory
らしい。
view
の引数についてみていくと、このメソッドは3つ引数をとれるらしい。また引数がなくても良い動くらしい。知らなかった。