2016-11-04 16 views
0

誰かがなぜPHP - 配列の比較==と===

$a = array (0 => 1, 1 => 2, 2 => 3); 
$b = array (1 => 2, 2 => 3, 0 => 1); 
var_dump ($a === $b); 

ブール値trueブール偽とないの結果は明確にしてくださいことはできますか?

+1

から同じデータ型を比較して比較していますhttp://php.net/manual/en/language .operators.array.php – Rizier123

答えて

3

あなたはPHP manual

$a === $bで見ることができるように:$ aと$ bは同じ順序で、同じ種類の同じキー/値のペアを持っている場合はTRUE。

結果がfalse

+1

配列の順序も比較されているか分かりませんでした。 –

+0

@ lupu51nfactumN778あなたは投票を下しましたか? –

+0

いいえ、それは他の誰かでした。 –

0

ダブルのみ値を比較等しく、三重の等号は

+1

まあ...あなたは間違っていません。しかし、そうではありません。 – Federkun

0
$a = array (0 => 1, 1 => 2, 2 => 3); 
$b = array (1 => 2, 2 => 3, 0 => 1); 
$c = array (0 => 1, 1 => 2, 2 => 3); 
var_dump($a === $b); // False 
var_dump($a === $c); // True 

もアレイのデータ型を比較されますので、あなたの配列のキー/値のペアを同じ順序で設定されていません同じ順序で一致する必要があります。

0

$ ===の$ bは $ aと$ bは同じ順序にし、同じ種類同じキー/値にペアを持っている場合にのみTRUEになります。

0
$a == $b Equal TRUE if $a is equal to $b, except for (True == -1) which is still True. 

$a === $b Identical TRUE if $a is equal to $b, and they are of the same type. 

「1」== 1; True "1" === 1;偽

+0

誰が投票を下した人ですか?なぜですか? –

+0

これは誰ですか? – Blueblazer172

+0

ここにすべての正解です – Blueblazer172

0
$a = array (0 => 1, 1 => 2, 2 => 3); 
$b = array (1 => 2, 2 => 3, 0 => 1); 
var_dump($a == $b); // bool(true) 
var_dump($a === $b); // bool(false) 

==$a with $b
===から変数が順序は同じではありません$a with $b