Seguridad · Pregunta 3 de 12
Un parámetro de URL uid contiene el valor "5 OR 1=1". ¿Qué devuelve (int)$uid en PHP 8?
1 respuesta es correcta. Fácil
Mostrar solución
Solución
- B 5
Explicación
El cast (int) convierte un string en un entero y lee las cifras iniciales: "5 OR 1=1" se convierte en 5, y la parte SQL añadida se descarta. Si el texto no empieza por un número, como "abc", el cast da 0. Esto convierte a (int) en un saneamiento sencillo y eficaz para los ID antes de seguir procesándolos. Un TypeError solo se produce con parámetros de función estrictamente tipados, no con un cast explícito. Aun así, en las consultas SQL también los números se pasan como parámetros con nombre, por ejemplo con Connection::PARAM_INT.