PHP - condicional IF

 
Vista:
sin imagen de perfil

condicional IF

Publicado por Eduardo (17 intervenciones) el 18/04/2020 18:16:36
Saludos

Alguien me podria explicar el porque de esto:

1
2
3
4
5
6
7
8
9
$lennom = 0 ;
 
    if( $lennom < 5 ) {
      echo "la longitud del nombre es menor a 5" ;
   }
 
   if( ! $lennom > 5) {
      echo "la longitud del nombre NO es mayor a 5" ;
   }

¿ Porque solo se imprime el primer mensaje si el segundo condicional deberÍa ser VERDADERO porque $lennom NO ES MAYOR QUE 5 ?

Gracias adelantadas por la aclaración.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

condicional IF

Publicado por joel (1269 intervenciones) el 18/04/2020 19:20:52
El problema esta en que al negar la variable y la variable obtiene el valor "true"... prueba esto:
1
2
3
4
$lennom=0;
if (!$lennom==true) {
    echo "aqui si que entrara";
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

condicional IF

Publicado por Julio (830 intervenciones) el 18/04/2020 20:01:36
Hola.

La precedencia de operadores indica que ! prevalece sobre >, así que se ejecutará antes. Al hacer $lennom = 0, es como si esa variable tuviera un valor false. Al negar esa variable con !, pasa a valer true. Ahora tienes, realmente, esto:

1
true > 5

Y true está asociado al valor 1, por tanto esa comparación devolverá false. Si en vez de 5 pusieras true > 0, entonces te devolvería true y entraría.

Para hacer lo que supongo que buscas, te debería valer ponerlo entre paréntesis:

1
! ($lennom > 5)

Así primero dentro del paréntesis te daría un false, y la negación cambiaría a true.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar