ip
تستخدم للتحقق أن المدخل أنه ipv4
$request->validate([ 'ip'=>'required|ipv4', ]);
ipv6
تستخدم للتحقق أن المدخل أنه ipv6
$request->validate([ 'ip'=>'required|ipv6', ]);
أما في حال أردنا الدمج بين النوعين، إما أن يكون ipv4 أو ipv6 نستخدم ip
$request->validate([ 'ip'=>'required|ip', ]);
json
تستخدم للتأكد من أن المدخلات على شكل json
$request->validate([ 'json_data'=>'required|json', ]);
active url
تستخدم للتأكد من أن الرابط الذي تم إدخاله فعال أم لا، مثلا لو كان لدينا حقل لإدخال رابط الموقع، ونريد التحقق من أن الرابط موجود نستخدم الدالة active_url
لفرض لدي الفورم التالي لإدخال رابط الموقع
<form action="{{route('validation.store')}}" method="POST"> @csrf <div class="container"> @error('website') <div class="alert alert-danger">{{$message}}</div> @enderror <input type="text" name="website" value="{{ old('website') }}" class="form-control"/> <button type="submit" class="btn btn-primary">Add</button> </div> </form>
للتحقق نستخدم
$request->validate([ 'website'=>'required|active_url', ]);
وإذا كان الرابط غير موجود سوف يعطي الخطأ التالي
bail
لفرض أن لدي حقل، يتم تطبيق عليه أكثر من دالة validation ( required|integer|min:5|max:10) وكانت القيمة التي تم إدخالها مثلا 100 فإنه سيتم إرجاع رسالتين واحده ان الررقم يجب ان يكون أأكبر من 5 والرسالة الأخرى ان الرقم يجب ان يكون أقل من 10 ، لكن ماذا لو أردنا أن يتوقف عن أول حالة غير مطابقة وأن لا يكمل الحالات الأخرى.
هنا يتم إستخدام bail
$request->validate([ 'score'=>'bail|required|integer|min:5,max:10', ]);
uuid
تستخدم للتحقق من أن المدخل من نوع Universal Unique id وهو على الشكل التالي
a8445626-0995-11ec-9a03-0242ac130003
$request->validate([ 'uuid'=>'required|uuid', ]);