Почему PHP имеет логическое значение как в нижнем, так и в верхнем регистре? - PullRequest
6 голосов
/ 22 декабря 2011

Есть ли разница между true и TRUE или false и FALSE в PHP?

Ответы [ 4 ]

4 голосов
/ 26 января 2015

Если вы намереваетесь использовать JSON, тогда стандарт RFC7159 гласит:

Литеральные имена ДОЛЖНЫ быть строчными.Другие имена не допускаются.

И из Php 5.6 :

json_decode () теперь отклоняет нестрочные варианты литералов JSON true, false и null всегда, в соответствии со спецификацией JSON

и в соответствии со стандартом PSR-2 :

ключевые слова PHP ДОЛЖНЫ быть в* нижний регистр.

константы PHP true, false и null ДОЛЖНЫ быть в нижнем регистре.

Ps .: я не смог опубликовать ссылку на RFC7159 из-за SOограничения.

2 голосов
/ 22 декабря 2011

Константы чувствительны к регистру по умолчанию. Но для симметрии с другими пространствами имен идентификаторов они могут быть определены без учета регистра:

 define("mixedCASE", 123, TRUE);

 print MiXeDcAsE;

И именно так TRUE и FALSE были предварительно объявлены. (Они не являются встроенными синтаксическими анализаторами / языками.)

1 голос
/ 22 декабря 2011

Нет, PHP Parser не очень суетлив, когда дело доходит до TRUE, true и FALSE, false

0 голосов
/ 22 декабря 2011

http://php.net/manual/en/language.types.boolean.php

Чтобы указать логический литерал, используйте ключевые слова TRUE или FALSE. Оба регистрозависимы.

...