PHP 型の比較表
下記の表はPHPの型と 比較演算子 の振る舞いについて、緩やかな場合と厳密な場合の両方について 例を示しています。この付録はマニュアルの 型の相互変換 にも関連しています。種々のユーザーコメントと » BlueShoesの働きの おかげです。
この表を活用する前に、型とその意味について理解しておく必要があります。
例えば、"42"
は文字列ですが
42
は整数です。
false
はboolですが"false"
は
文字列です。
注意:
HTMLフォームは整数、浮動小数点数、booleanを渡してはくれず、 文字列を渡します。文字が数値であるかどうか確認するには、 is_numeric()を使うとよいでしょう。
注意:
$x
が定義されていない状態で単にif ($x)
としてしまうとE_NOTICE
レベルのエラーが発行てしまいます。代わりに、empty()や isset()を使うかあるいは変数を初期化するように してください。
注意:
数値演算の結果が、定数
NAN
で表される値になることがあります。 この値を他の値と比較すると、緩やかな比較および厳密な比較のいずれでも結果はfalse
になります。 自分自身と比較した場合も含みますが、true
と比較した場合は除きます。 (つまりNAN != NAN
でありNAN !== NAN
であるということです)。 結果がNAN
になる演算の例にはsqrt(-1)
やasin(2)
そしてacosh(0)
があります。
式 | gettype() | empty() | is_null() | isset() | bool : if($x)
|
---|---|---|---|---|---|
$x = "";
|
string | true
|
false
|
true
|
false
|
$x = null;
|
NULL | true
|
true
|
false
|
false
|
var $x;
|
NULL | true
|
true
|
false
|
false
|
$x が未定義
|
NULL | true
|
true
|
false
|
false
|
$x = array();
|
array | true
|
false
|
true
|
false
|
$x = array('a', 'b');
|
array | false
|
false
|
true
|
true
|
$x = false;
|
bool | true
|
false
|
true
|
false
|
$x = true;
|
bool | false
|
false
|
true
|
true
|
$x = 1;
|
int | false
|
false
|
true
|
true
|
$x = 42;
|
int | false
|
false
|
true
|
true
|
$x = 0;
|
int | true
|
false
|
true
|
false
|
$x = -1;
|
int | false
|
false
|
true
|
true
|
$x = "1";
|
string | false
|
false
|
true
|
true
|
$x = "0";
|
string | true
|
false
|
true
|
false
|
$x = "-1";
|
string | false
|
false
|
true
|
true
|
$x = "php";
|
string | false
|
false
|
true
|
true
|
$x = "true";
|
string | false
|
false
|
true
|
true
|
$x = "false";
|
string | false
|
false
|
true
|
true
|
true
|
false
|
1
|
0
|
-1
|
"1"
|
"0"
|
"-1"
|
null
|
array()
|
"php"
|
""
| |
---|---|---|---|---|---|---|---|---|---|---|---|---|
true
|
true
|
false
|
true
|
false
|
true
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
true
|
true
|
false
|
true
|
1
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
0
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
true
|
false
|
true
|
true
|
-1
|
true
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
"1"
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
"0"
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
"-1"
|
true
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
null
|
false
|
true
|
false
|
true
|
false
|
false
|
false
|
false
|
true
|
true
|
false
|
true
|
array()
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
true
|
false
|
false
|
"php"
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
""
|
false
|
true
|
false
|
true
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
true
|
false
|
1
|
0
|
-1
|
"1"
|
"0"
|
"-1"
|
null
|
array()
|
"php"
|
""
| |
---|---|---|---|---|---|---|---|---|---|---|---|---|
true
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
1
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
0
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
-1
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
"1"
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
"0"
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
"-1"
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
null
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
array()
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
"php"
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
""
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|