違い: 1. and と "&&" 演算子は両方とも論理 AND を表現するために使用され、優先順位が低く、"&&" 演算子が高くなります; 2. or 演算子と "||" 演算子は両方とも論理 OR を表現するために使用される、または優先順位が低く、「||」の方が優先順位が高い; 3. 「$」演算子は論理 NOT を表現するために使用されます; 4. xor 演算子は論理排他的 OR を表現するために使用されます。
この記事の動作環境: Windows 10 システム、PHP バージョン 7.1、Dell G3 コンピューター。
php 論理演算子
私はいつも「or」と「|」だと思っていました。 PHP では「|」を均等化できますが、そうではなく、両者の間には優先順位の違いがあります。以下は、それらの違いを示す例です。
<?php $a = false || true; //'||'的优先级大于'=',先执行 false || true,然后赋值$a $b = false or true; // 'or'的优先级小于'=',先将false赋值给$b var_dump($a).PHP_EOL;//true var_dump($b);//false ?>
実行後、$a は true、$b は false になります。これは、「||」の優先度が「=」よりも高いためです。False || true が先に実行され、実行後の結果 true が $a に代入されます。 「or」の優先順位は「=」よりも低く、最初に $b に false を代入するため、$b は false
PHP の論理「AND」演算には、AND と && の 2 つの形式があります。同じです。 「or」演算にも OR と || の 2 つの形式があります。
2 つの別個の式が操作に関与する場合、2 つの形式の結果はまったく同じになります。たとえば、$a AND $b と $a && $b の間に違いはありません。同じ $a OR $b と $a || $b はまったく同じです。
ただし、論理演算子の 2 つの形式には優先順位が異なり、これら 4 つの記号の優先順位は高い順に、&&、||、AND、OR となります。この文に特に注意してよく理解してください。例:
$a || $b AND $c || $d
同等:
($a || $b) AND ($c || $d)
推奨される学習: 「PHP ビデオ チュートリアル 」
以上がPHPの論理演算子の違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。