2009-07-16 13 views

答えて

25

!=演算子は値を比較し、!==演算子は型も比較します。

これを意味します!

var_dump(5!="5"); // bool(false) 
var_dump(5!=="5"); // bool(true), because "5" and 5 are of different types 
+0

null!= "null"は間違っていません。間違った例です。また、bool(真)の場合はエコー1を出力し、bool(偽)の場合はエコーを出力しません。コードスニペットの実際の出力は11です。 – VolkerK

+0

@VolkerK - 私の前にPHPインタプリタがありませんが、これはもっと正確な例です。 :-) –

+0

私の間違い。編集、ベンブランクありがとう。うまくいけば元のポスターは混乱しないだろう。 – Salty

3

を==チェック値ならびに入力=のみチェックが

$num = 5 

if ($num == "5") // true, since both contain 5 
if ($num === "5") // false, since "5" is not the same type as 5, (string vs int) 
7

!=の値が横切る平等をチェック==演算子の逆でありますタイプ

!==は、===演算子の逆であり、同じものの等価性のみをチェックしますタイプ。

+0

http://ca2.php.net/manual/nl/language.operators.comparison.phpも参照してください。 – txwikinger

2

===はアイデンティティ演算子と呼ばれます。そして、他の質問の回答でも議論されています。

他の回答もここにあります。

4

!=は「等しくない」のためのものであり、!==は「同一ではない」のものです。例えば:

'1' != 1 # evaluates to false, because '1' equals 1 
'1' !== 1 # evaluates to true, because '1' is of a different type than 1 
1

オペレータ!=は、2つのオペランドの値が異なる場合はtrueを返します。

オペレータ!==は、2つのオペランドが異なる値を持つ場合、または異なる型のオペランドの場合に真を返します。

歓声

関連する問題