PHP - 論理演算子

論理演算子

$a and $b または $a && $b (論理積)
$a および $b が共に TRUE の場合に TRUE
$a or $b または $a || $b (論理和)
$a または $b のどちらかが TRUE の場合に TRUE
$a xor $b (排他的論理和)
$a または $b のどちらかが TRUE でかつ両方とも TRUE でない場合に TRUE
!$a (否定)
$aTRUE でない場合に TRUE

論理積と論理和の演算子が2種類あるのは、演算が行われる際の優先順位が異なっているためです。詳細は、演算子の優先順位を参照ください。

<?php
  /* 論理積 */
  echo var_dump(true and true);   // bool(true)
  echo var_dump(true and false);  // bool(false)
  echo var_dump(false and true);  // bool(false)
  echo var_dump(false and false); // bool(false)
  
  /* 論理和 */
  echo var_dump(true or true);    // bool(true)
  echo var_dump(true or false);   // bool(true)
  echo var_dump(false or true);   // bool(true)
  echo var_dump(false or false);  // bool(false)
  
  /* 排他的論理和 */
  echo var_dump(true xor true);   // bool(false)
  echo var_dump(true xor false);  // bool(true)
  echo var_dump(false xor true);  // bool(true)
  echo var_dump(false xor false); // bool(false)
  
  /* 否定 */
  echo var_dump(!true);           // bool(false)
  echo var_dump(!false);          // bool(true)
?>
論理演算子

関連記事