重複の可能性:
参照-この記号は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は、これをうまく説明しています。andor&&||
他の言語では、とではなく、とだけが&&あります。||andor
&および|はビット演算子です。あなたはここでそれらについて読むことができます。
ビット演算子の一般的な使用法はフラグです。一般的な使用法の1つは、PHPのerror_reporting設定です。