Skip to content

Instantly share code, notes, and snippets.

@hanafiah
Created August 6, 2022 14:46
Show Gist options
  • Save hanafiah/51c442527ae4db1ea516bf675d888ca4 to your computer and use it in GitHub Desktop.
Save hanafiah/51c442527ae4db1ea516bf675d888ca4 to your computer and use it in GitHub Desktop.
?php
namespace App\Rules;
use Illuminate\Contracts\Validation\Rule;
/**
* check valid Password format
*/
class ValidPassword implements Rule
{
/**
* Create a new rule instance.
*
* @return void
*/
public function __construct()
{
//
}
/**
* Determine if the validation rule passes.
*
* @param string $attribute
* @param mixed $value
* @return bool
*/
public function passes($attribute, $value)
{
$exp = "/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&#^.])[A-Za-z\d@$!%*?&#^.]{8,}$/";
return (bool)preg_match($exp, $value);
}
/**
* Get the validation error message.
*
* @return string
*/
public function message()
{
return __('validation.ValidPassword');
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment