重複の可能性:
参照-この記号はPHPで何を意味しますか?
PHPのこれら2つの違いは何ですか?
if( $x==1 || $y==1) if( $x==1 && $y==1)
対(それぞれ)
if( $x==1 | $y==1) if( $x==1 & $y==1)
私の知る限り、どちらも同じように機能します| 対|| phpで。しかし、違いがなければなりません!!!
重複の可能性:
参照-この記号はPHPで何を意味しますか?
PHPのこれら2つの違いは何ですか?
if( $x==1 || $y==1) if( $x==1 && $y==1)
対(それぞれ)
if( $x==1 | $y==1) if( $x==1 & $y==1)
私の知る限り、どちらも同じように機能します| 対|| phpで。しかし、違いがなければなりません!!!
||
と&&
はブール演算子です。2つの引数を取り、それぞれをブールに変換してから、true
またはを返しfalse
ます。
|
および&
はビット演算子です。引数をバイナリに変換し、各ビットを比較します。2進数を返します。
1つは条件付きorandandを使用し、もう1つはビット単位のorandandを使用しています。
||
これは条件ですOR
|
これは少し賢明ですor
$a | $b
Or
$a
(包括的または)いずれか$b
に設定されている、または設定されているビット$a & $b
And
$a
両方に 設定され、設定されているビット$b
。。
if( $x==1 || $y=1) if( $x==1 && $y==1)
if body --> if one of them is true both is true
ドキュメントはあなたの友達です。&&
および||
は論理演算子です。あなたはここでそれらについてもっと読むことができます。
演算子の優先順位&&
について読み、 vsand
と||
vsor
が異なる理由を学ぶことを強くお勧めします。一方が他方より適切である場合を学びます。基本的に、および=
よりも優先順位が高くなりますが、およびよりも優先順位は低くなります。論理演算子セクションの例1は、これをうまく説明しています。and
or
&&
||
他の言語では、とではなく、とだけが&&
あります。||
and
or
&
および|
はビット演算子です。あなたはここでそれらについて読むことができます。
ビット演算子の一般的な使用法はフラグです。一般的な使用法の1つは、PHPのerror_reporting設定です。