¿Alguien me puede explicar por qué el elemento “undefined” que es un string PHP me lo toma como si fuera un número mayor a 7? Y en consec...

Hugo Ivan Landeros Dimas

Hugo Ivan Landeros Dimas

Pregunta
studenthace 3 años

¿Alguien me puede explicar por qué el elemento “undefined” que es un string PHP me lo toma como si fuera un número mayor a 7? Y en consecuencia me imprime esa validación.

El ejercicio lo solucioné añadiendo is_int($edad) en el caso mayor a 7 para que también valide si es un número entero y si no entre al default, pero me llama la atención por qué sucede esto.

Toma el string undefined como número mayor a 7:

$edades = [3, 4, 5, 6, 7, 8, 9, "undefined"]; function imprimirMensaje($edad, $parte) { echo "El estudiante con $edad años tendrá sus juguetes en la parte $parte de la bodega. <br><br>"; } foreach ($edades as $edad) { switch ($edad) { case $edad < 5: imprimirMensaje($edad, "inferior"); break; case $edad >= 5 && $edad <= 7: imprimirMensaje($edad, "media"); break; case $edad > 7: imprimirMensaje($edad, "alta"); break; default: echo "El estudiante sin edad definida tendrá sus juguetes en la bodega de al lado."; break; } }

Solucionado (entra el default con el elemento undefined):

$edades = [3, 4, 5, 6, 7, 8, 9, "undefined"]; function imprimirMensaje($edad, $parte) { echo "El estudiante con $edad años tendrá sus juguetes en la parte $parte de la bodega. <br><br>"; } foreach ($edades as $edad) { switch ($edad) { case $edad < 5: imprimirMensaje($edad, "inferior"); break; case $edad >= 5 && $edad <= 7: imprimirMensaje($edad, "media"); break; case $edad > 7 && is_int($edad): imprimirMensaje($edad, "alta"); break; default: echo "El estudiante sin edad definida tendrá sus juguetes en la bodega de al lado."; break; } }
1 respuestas
para escribir tu comentario
    Ana Belisa Martinez

    Ana Belisa Martinez

    Team Platzihace 3 años

    Oh muy bien!

Curso Práctico de PHP

Curso Práctico de PHP

Desarrolla un juego interactivo en PHP ordenando palabras desordenadas. Aprende a manipular formularios HTML, procesar datos y dar feedback al usuario, aprovechando estructuras de control y funciones. Mejora habilidades en programación dinámica y lógica.

Curso Práctico de PHP
Curso Práctico de PHP

Curso Práctico de PHP

Desarrolla un juego interactivo en PHP ordenando palabras desordenadas. Aprende a manipular formularios HTML, procesar datos y dar feedback al usuario, aprovechando estructuras de control y funciones. Mejora habilidades en programación dinámica y lógica.