Cuando estaba aprendiendo PHP, leí en alguna parte que siempre debes usar las versiones en mayúsculas de booleanos TRUEy FALSE, debido a que las versiones en minúsculas "normales", truey false, no eran "seguras" de usar.
Han pasado muchos años, y cada script PHP que he escrito usa la versión en mayúsculas. Ahora, sin embargo, estoy cuestionando eso, ya que he visto un montón de PHP escrito con la versión en minúsculas (es decir, Zend Framework).
¿Alguna vez hubo alguna razón para usar la versión en mayúscula, o está perfectamente bien usar la minúscula?
editar: Olvidé mencionar que esto se aplica a NULLy nulltambién.
php
language-history
Austin Hyde
fuente
fuente

Respuestas:
El manual oficial de PHP dice:
Entonces sí,
true === TRUEyfalse === FALSE.Personalmente, sin embargo, prefiero
TRUEunatrueyFALSEotra vezfalsepor razones de legibilidad. Es la misma razón por la que prefiero usarORoveroro||, y usarANDoverando&&.El estándar PSR-2 requiere
true,falseynullestar en minúsculas.fuente
ORy||son diferentes operadores en PHP (ya que tienen una precedencia diferente), como sonANDy&&. (Así, por ejemplo&&y||son más altos precedencia que los operadores de asignación, peroORyANDno lo son.)¡Feliz depuración! (PHP < 5.1.3 (2 de mayo de 2006) , ver demostración )
Editar: las mayúsculas son constantes y las minúsculas son valores. Usted está interesado en el valor, no en la constante, que puede cambiar fácilmente.
fuente
T_NULL,T_TRUEyT_FALSEen tiempo de análisis), son entre mayúsculas y minúsculas, por lo que el usoNULLno es en realidad una "constante" --- a menos que lo conviertas en una constante, usandodefine(). Simplemente usandoNULLoTRUEno significa que es una constante, como si no hubiera tal constante, PHP lo interpreta como el literal. Una descripción más precisa es que las versiones en minúsculas no se pueden redefinir, mientras que cualquier otra variación de caso sí se puede .Use minúsculas.
fuente
Si tiene la intención de utilizar JSON, RFC7159 dice:
De la lista de cambios incompatibles con versiones anteriores en PHP 5.6 :
De acuerdo a estándar PSR-2 :
fuente
json_encode(TRUE)yjson_encode(true)rendimiento'true'.Solía hacer booleanos de estilo C VERDADERO / FALSO como todos los concursos, en mayúsculas, hasta que llegué al PSR carro de .
Sección 2.5 de PSR-2:
Básicamente, si quieres jugar bien con detalles de estilo de código abierto, los booleanos deben ser minúsculas.
fuente
No importa,
truees exactamente lo mismo queTRUE. Lo mismo vale parafalseynull. No he escuchado que hubiera importado en ningún momento.La única forma de desordenar las cosas es citando esos valores, por ejemplo:
Lo único que puede restringirlo o alentarlo a usar mayúsculas o minúsculas puede ser su empresa o sus propias pautas de codificación. Aparte de eso, eres libre de usar cualquiera de los dos y no dará lugar a ningún problema.
fuente
falseynullsería lo mismo. Dije que "lo mismo vale parafalseynull", lo que significa que ambos pueden expresarse en letras minúsculas o mayúsculas.He escrito un código simple para verificar las diferencias entre falso y FALSO : cada iteración estaba haciendo algo que:
Aquí están los resultados:
Por lo tanto, podemos ver que el rendimiento se ve ligeramente afectado por el caso booleanos: las minúsculas son más rápidas. Pero ciertamente no lo verás.
fuente
Personalmente, siempre he usado la forma en minúscula, pero por ninguna razón en particular que no sea para hacer que mi código se vea ordenado, el único lugar donde uso letras mayúsculas es cuando los nombres de las clases y los nombres de variables de la carcasa de camello.
Sin embargo, una de las ventajas de usar mayúsculas es que destacan y son fáciles de encontrar en el código.
fuente
Encontré esta vieja pregunta mientras me preguntaba lo mismo. Buen punto con define ('VERDADERO', falso); define ('FALSO', verdadero); Sin embargo, no se aplica a php5. Escribir esas líneas en un código php5 es como escribir un comentario.
fuente
Aquí está mi PRUEBA en Windows 7x64bit Apache / 2.4.9 PHP / 5.5.14
Esta vez FALSO ganó 20 veces. Entonces mayúsculas es más rápido en mi entorno.
fuente