【Laravel】Controller でのバリデーションの追加

バリデーションルールでは表現できない複雑なバリデーションチェックを行いたい場合、独自のチェックを行い、エラーメッセージを追加することができる。

  1. use Illuminate\Support\Facades\Validator;
  2.  
  3. class HomeController extends Controller
  4. {
  5. public function sample(Request $request)
  6. {
  7. $validator = Validator::make($request->all(), []);
  8.  
  9. if (条件) {
  10. $validator->errors()->add('name', 'error message');
  11. }
  12.  
  13. if ($validator->errors()->count() > 0) {
  14. return back()->withInput()->withErrors($validator);
  15. }
  16. }
  17. }