2010-01-01 11 views
5

Ambos garantizarán que $ var sea un valor booleano, pero este último parece más claro. El doble signo de exclamación (!!) es más corto de escribir, pero menos claro, y es más probable que cause confusión. Sin mencionar que es difícil ejecutar una búsqueda para obtener respuestas.

El doble signo de exclamación es algo de lo que solo he oído hablar en JavaScript, que no tiene encasillado tipo booleano. ¿Es normal ver que también se use en PHP?

Respuesta

3

Ninguno de estos es común en PHP porque son innecesarios.

Si puede hacer !!, puede del mismo modo que lo utiliza, donde es necesaria una expresión booleana (while, if, &&, etc.).

+0

¿Estoy haciendo algo mal o el 'echo' no arroja ningún resultado en php? – loveNoHate

4

Esto es válido en JavaScript, aunque no es técnicamente un "fundido", se logra el mismo efecto:

var booleanValue = Boolean(otherValueType); 

Esto es equivalente a:

var booleanValue = !!otherValueType; 

me parece que es bueno hacer esto al procesar los parámetros entrantes, para aclarar que uno pretendía que un valor fuera booleano. Al verificar la "veracidad", no hay necesidad de encasillar en PHP o JavaScript. Solo recuerda que una cadena vacía es equivalente a false en PHP y true en JavaScript.

Por lo tanto, para responder a su pregunta, o bien está bien en cualquier idioma, es simplemente una opción de estilo personal.

Cuestiones relacionadas