null с операторами PHP <и> - PullRequest
23 голосов
/ 11 апреля 2011

Может кто-нибудь объяснить, как null отображается в этих утверждениях?

null>0; //=> bool(false)
null<0; //=> bool(false)
null==0; //=> bool(true)

, но

null<-1; // => bool(true)

Я предполагаю, что это некоторая проблема с отображением, но не могу ее взломать.

Пробовал с PHP 5.3.5-1 с Suhosin-Patch.

1 Ответ

28 голосов
/ 11 апреля 2011

Я бы указал на несколько страниц: http://php.net/manual/en/types.comparisons.php http://php.net/manual/en/language.operators.comparison.php http://php.net/manual/en/language.types.boolean.php

Итак, в вашем последнем примере:

null<-1 => bool(true)

The null приведен к false, а -1 приведен к true, false меньше true

В первых двух примерах null приведен к false и0 приводится к false, false не меньше или не больше false, но равно ему.

Ох, как весело null!: D

...