PHP 型の比較

PHP は弱型付け言語ですが、変数の型とその意味を理解する必要があります。PHP 変数を比較する必要が頻繁にあり、そこには緩い比較と厳密な比較が含まれるからです。

  • 緩い比較:等号を2つ使用==比較では、値のみを比較し、型は比較しません。
  • 厳密な比較:等号を3つ使用===比較では、値に加えて型も比較します。

例えば、"42" は文字列であり、42 は整数です。FALSEはブール値であり、"FALSE"は文字列です。

例

<?php if(42 == "42") { echo '1、値が等しい'; } echo PHP_EOL; //改行文字 if(42 === "42") { echo '2、型が等しい'; } else { echo '3、型が等しくない'; } ?>

上記の例の出力結果は次のとおりです:

1、值相等
3、类型不相等

PHP で 0、false、null を比較する

テストコード:

例

<?php echo '0 == false: '; var_dump(0 == false); echo '0 === false: '; var_dump(0 === false); echo PHP_EOL; echo '0 == null: '; var_dump(0 == null); echo '0 === null: '; var_dump(0 === null); echo PHP_EOL; echo 'false == null: '; var_dump(false == null); echo 'false === null: '; var_dump(false === null); echo PHP_EOL; echo '"0" == false: '; var_dump("0" == false); echo '"0" === false: '; var_dump("0" === false); echo PHP_EOL; echo '"0" == null: '; var_dump("0" == null); echo '"0" === null: '; var_dump("0" === null); echo PHP_EOL; echo '"" == false: '; var_dump("" == false); echo '"" === false: '; var_dump("" === false); echo PHP_EOL; echo '"" == null: '; var_dump("" == null); echo '"" === null: '; var_dump("" === null);

上記の例の出力結果は次のとおりです:

0 == false: bool(true)
0 === false: bool(false)

0 == null: bool(true)
0 === null: bool(false)

false == null: bool(true)
false === null: bool(false)

"0" == false: bool(true)
"0" === false: bool(false)

"0" == null: bool(false)
"0" === null: bool(false)

"" == false: bool(true)
"" === false: bool(false)

"" == null: bool(true)
"" === null: bool(false)

その他の拡張機能