Código de PHP - Verificar estructura de una contraseña

Imágen de perfil
Val: 186
Ha aumentado su posición en 2 puestos en PHP (en relación al último mes)
Gráfica de PHP

Verificar estructura de una contraseñagráfica de visualizaciones


PHP

Publicado el 19 de Abril del 2019 por Joan
979 visualizaciones desde el 19 de Abril del 2019
Estas dos funciones hacen lo mismo de diferente manera, una con tres simples expresiones regularas, y la segunda todo en una sola expresión regular.

1

Publicado el 19 de Abril del 2019gráfica de visualizaciones de la versión: 1
980 visualizaciones desde el 19 de Abril del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
 
/**
 * Función para verificar que una contraseña cumpla con todos los requisitos
 *  1-contenga al menos una letra en mayuscula
 *  2-contenga al menos una letra en minuscula
 *  3-contenga al menos un numero
 *  4-tenga un minimo de 8 caracteres
 *
 * @param string $password
 * @return int
 */
function checkPassword1($password) {
    $uppercase = preg_match('@[A-Z]@', $password);
    $lowercase = preg_match('@[a-z]@', $password);
    $number    = preg_match('@[0-9]@', $password);
 
    if(!$uppercase || !$lowercase || !$number || strlen($password) < 8) {
        return 0;
    }
    return 1;
}
 
/**
 * Función para verificar que una contraseña cumpla con todos los requisitos
 *  1-contenga al menos una letra en mayuscula
 *  2-contenga al menos una letra en minuscula
 *  3-contenga al menos un numero
 *  4-tenga un minimo de 8 caracteres
 *
 * @param string $password
 * @return int
 */
function checkPassword2($password) {
 
    /**
     * Contenido de la expresión regular
     *
     * ^             inicio de cadena
     * \S*           cualquier caracter
     * (?=\S{8,})    al menos 8 caracteres
     * (?=\S*[a-z])  al menos una letra en minuscula
     * (?=\S*[A-Z])  al menos una letra en mayuscula
     * (?=\S*[\d])   al menos un numero
     * $             fin de cadena
     */
    if(preg_match('/^\S*(?=\S{8,})(?=\S*[a-z])(?=\S*[A-Z])(?=\S*[\d])\S*$/', $password))
        return 1;
    return 0;
}
 
echo checkPassword1("elcieloazul"); # 0
echo checkPassword2("elcieloazul"); # 0
echo "<br>";
echo checkPassword1("elCiel0"); # 0
echo checkPassword2("elCiel0"); # 0
echo "<br>";
echo checkPassword1("elCiel0azul"); # 1
echo checkPassword2("elCiel0azul"); # 1



Comentarios sobre la versión: 1 (0)


No hay comentarios
 

Comentar la versión: 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5263