قواعد تحقق مخصصة:
إنشاء قاعدة
php artisan make:rule Uppercaseفئة القاعدة
class Uppercase implements ValidationRule
{
public function validate(string $attribute, mixed $value, Closure $fail): void
{
if (strtoupper($value) !== $value) {
$fail('يجب أن يكون :attribute بأحرف كبيرة.');
}
}
}استخدام القاعدة
$request->validate([
'name' => ['required', new Uppercase],
]);قاعدة Closure
'email' => [
function ($attribute, $value, $fail) {
if (!str_ends_with($value, '@company.com')) {
$fail('يجب أن يكون بريد الشركة.');
}
},
],