I am using the below script to check my passwords for length, uppercase, lowercase and numbers.
How could I change it to make it check FOR symbols instead of against symbols?
<?php
$password = 'afsd323A';
if(
//I want to change this first line so that I am also checking for at least 1 symbol.
ctype_alnum($password) // numbers & digits only
&& strlen($password)>6 // at least 7 chars
&& strlen($password)<21 // at most 20 chars
&& preg_match('`[A-Z]`',$password) // at least one upper case
&& preg_match('`[a-z]`',$password) // at least one lower case
&& preg_match('`[0-9]`',$password) // at least one digit
)
{
echo 'valid';
}
else
{
echo 'not valid';// not valid
}
?>
your desired regex is below
$pattern = ' ^.*(?=.{7,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$ ';
preg_match($pattern,$password);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With