Ver Mensaje Individual
  #181 (permalink)  
Antiguo 16/01/2011, 08:20
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Juego: "¿Dónde está el error?"

A ver si me animo a participar:
Por qué?
Porque en una comparación de ese tipo entre un entero y un string php convierte (o intenta convertir) el tipo del string (internamente, es decir, sólo durante la comparación) en entero. La conversión la realiza de una manera parecida a la que en javascript lo hace parseInt, es decir, si empieza con un número, asumirá ese número; si empieza con letra será 0 (en javascript sería NaN).
Cómo solucionarlo?
Hay otras maneras redundantes, pero la más sencilla es hacer una comparación de identidad, usando el operador === en lugar de ==