私はPHP初心者で「Laravel入門」という本を購入して勉強中です。
本書の中で、オリジナルバリデータの作成のために書いたコードの意味がわかりません。(P148~P151)ここのコードの意図や意味がわからず解読できず途方に暮れています、ご教授いただければ幸いです、よろしくお願いいたします。
①下記のサービスプロバイダのresolverメソッドそのものの仕組みがわかりません。
これがどのようにしてHelloValidatorクラスのインスタンスを返すことになっているのでしょうか?また、この引数は具体的にどのような働きをしていますか?(クロージャーや$translator, $data,$rules, $messages)
②下記の新たに定義したバリデータのルール中で引数は具体的になにを意味していますか?($attribute, $value, $parameters)
サービスプロバイダでHelloValidatorクラスに引数を入れてインスタンス化しますがその引数との具体的な関係をご教授ください。
新たに定義したバリデータのルール
<?php namespace App\Http\Validators; use Illuminate\Validation\Validator; class HelloValidator extends Validator { public function validateHello($attribute, $value, $parameters) { return $value % 2 == 0; } }
サービスプロバイダ
<?php namespace App\Providers; use Illuminate\Support\Facades\View; use Illuminate\Support\ServiceProvider; use Illuminate\Validation\Validator; use App\Http\Validators\HelloValidator; class HelloServiceProvider extends ServiceProvider { public function boot() { $validator = $this->app['validator']; $validator->resolver(function($translator, $data, $rules, $messages) { return new HelloValidator($translator, $data, $rules, $messages); }); } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/02 05:29