PHPでのNULLとNULLの違い


85

間に差があるNULLnullPHPでは?互換性があるように見えることもあれば、そうでないこともあります。

編集:(この質問を投稿する前に)回答にリンクされているドキュメントを読んだときに、何らかの理由で「大文字と小文字を区別しない」ではなく「大文字と小文字を区別する」と読みました。これが、この質問を最初に投稿した理由です。 。


2
NULL=nullDB内の完全一致が照会されない限り、その逆も同様です。
ファンクフォーティナイナー2013年

@FunkFortyNinerこの質問に関係するDBはありません。質問はプログラミング言語についてです。
PabloPazos18年

@PabloPazos 6年が経過した後、なぜ私にpingを送信するのですか?さらに、私のコメントをもう一度読むと、おそらく関連性がわかります。可能性のある真実である「そうでない」というキーワードを見てください。
ファンクフォーティナイナー2018年

1
@PabloPazosは、あなたのようなコメントをするのは少しばかげています。彼の言ったことは完全に関連性があり、役に立ちます。他の誰かがやって来て、DBエラーが発生しているときにこれを見た場合、解決策をすばやく追跡するのに役立ちます。関係のない人も、単に先に進んで別の答えを調べます。
Kenziiee Flavius 2018

1
@FunkFortyNinerコメントありがとうございます、まさにそれが私が聞く必要があったものでした。isset()を使用してデータベース値NULLを除外しようとしましたが、通常は通常のnullに対してfalseを返しますが、データベース値では$ value === NULLを使用する必要がありました。これがどのように可能であるかはよくわかりませんが、この問題でこのページにたどり着きました。
ジェフ

回答:



9

違いはありません。同じタイプで、大文字と小文字を区別しないキーワードです。True/Falseなどと同じ...


-2

技術的な違いがありますが、あなたが考えていることではありません(辞書のどこに表示されるかを考えてください)。小文字のnullのASCII値は大文字の後に表示されます。試してみてください:

$a = NULL;
$b = null;
if($a < $b){
   print 'first num appears earlier in the dictionary than second num';
}
else {
   print'the right num appears in the dictionary before the left num ';
}

**実際には、大文字のNULLが0であるのに対し、小文字のnullのASCII値はありません。小文字のnullは、0より大きい文字列値として評価されます。ここを除いて、すべての大文字と小文字のASCII値の差は32です。ここで、文字列値全体が考慮されます。


えーと、これはブールアネスクフラグとしての使用法とどのように関連していますか?ASCIIは決して照会されませんか?
マーティン

1
これは間違っています。あなたは言うべきelseif($b < $a) {です...} else print 'the same';そしてあなたは実際にそれらが同じであることがわかるでしょう。nUlLとNuLlも同様です。
マット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.