![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /home/fdshops/public_html/vendor/laravel/framework/src/Illuminate/Validation/Rules/ |
<?php namespace Illuminate\Validation\Rules; use Illuminate\Contracts\Validation\Rule; use TypeError; class Enum implements Rule { /** * The type of the enum. * * @var string */ protected $type; /** * Create a new rule instance. * * @param string $type * @return void */ public function __construct($type) { $this->type = $type; } /** * Determine if the validation rule passes. * * @param string $attribute * @param mixed $value * @return bool */ public function passes($attribute, $value) { if ($value instanceof $this->type) { return true; } if (is_null($value) || ! function_exists('enum_exists') || ! enum_exists($this->type) || ! method_exists($this->type, 'tryFrom')) { return false; } try { return ! is_null($this->type::tryFrom($value)); } catch (TypeError $e) { return false; } } /** * Get the validation error message. * * @return array */ public function message() { $message = trans('validation.enum'); return $message === 'validation.enum' ? ['The selected :attribute is invalid.'] : $message; } }