私は深い穴があるPHPに思ったとし、&&同じですが、読みやすさと美しさのための文言は、実際には、私が間違っていた。!
次のコードを見てください:
$ BA =はtrue。 $ bBを=偽; $ B1 = $ BAと$ bBで。 $ B2 = $ BA && $ bBで。 var_dump($のB1)。// $ b1の=真 のvar_dump($ B2の); // $ b2を=偽 偽の$ BA =; $ bBを=はtrue。 $ B3 = $ BAまたは$ bBで。 $ B4 = $ BA || $ bBで、 var_dump($のB3)。// $ b3を=偽 のvar_dump($ B4の); // $ B4を=真
あなたのための奇妙な、および/ &&およびまたは/ ||結果は同じではないことが判明したから。それがどこにあるか問題がありますか?
私たちは、コードの一部を見てください!
$ BA =はtrue。 $ bBを=偽; var_dump($ BAおよび$ BB)。//偽 のvar_dump($ BA && $ BB)。//偽 偽の$ BA =; $ bBを=はtrue。 var_dump($ BAまたは$ BB)。//真 のvar_dump($ BA || $ BB)。//真
そして、デジタルに見えます
$ BA = 10; $ BBは20 =; $ B1 = $ BAと$ bBで。 $ B2 = $ BA && $ bBで。 var_dump($のB1)。// $ b1の= 10 のvar_dump($ B2の); // $ B2の=真
の$ BA = 10; $ BBは20 =; $ B3 = $ BAまたは$ bBで。 $ B4 = $ BA || $ bBで、 var_dump($のB3)。// $ B3の= 10 のvar_dump($ B4の); // $ B4の=真 の$ BA = 10; $ BBは20 =; var_dump($ BAおよび$ BB)。//真 のvar_dump($ BA && $ BB)。//真 $ BA = 10; $ BBは20 =; var_dump($ BAまたは$ BB)。//真 のvar_dump($ BA || $ BB)。//真
さらに驚くべきことに、そしてどのように右である。質問は=に表示されることがありますので
演算子の優先順位
この表によって、我々は、優先度を参照して、および/ &&及び/又は||演算子=以下同じ優先順位ではないことが判明し、及び又はセットので、上記のコードができ理解することが好きなので、最終的にはそれが私たちに信じられないほどの結果をみましょう。最初に行い、その後、割り当てと論理演算またはOR、および操作の結果と生存しなかったを行うことです。