広告 PHP入門

【PHP入門】論理演算子

はじめに

前回の記事では、PHPの比較演算子、配列演算子、条件演算子について紹介しました。

本記事では、論理演算子について紹介します。

論理演算子

論理演算子とは、複数の条件式を組み合わせて、より複雑な条件をあらわすときに使う演算子です。

論理演算子の種類

論理演算子には次のようなものがあります。

論理演算子読み方使用例使用例の説明
&&かつ(and)A && BAとBが共にtrueの場合、true
||または(or)A || BAかBの少なくても1つがtrueの場合、true
!~ではない(否定)!AAがfalseの場合、true

論理演算子「&&」(かつ)

論理演算子「&&」は論理演算論理積であり、ベン図であらわすと次の通りです。

ベン図とは、論理演算を視覚的にわかりやすく表現するためのものです。

積集合

「&&」(かつ)は、条件Aと条件Bの両方を満たす(ベン図の赤色の部分)場合に「true」を返す演算子です。

論理演算子「||」(または)

論理演算子「||」は論理演算の論理和であり、ベン図であらわすと次の通りです。

和集合

「||」(または)は、条件Aと条件Bのどちらかを満たす(ベン図の赤色の部分)場合に「true」を返す演算子です。

論理演算子「!」(否定)

論理演算子「||」は論理演算の論理和であり、ベン図であらわすと次の通りです。

補集合

「!」(否定)は、条件Aではないとき(ベン図の赤色の部分)「true」を返す演算子です。

論理演算子の使用例

それでは、実際にPHPのプログラムで論理演算子を使用した例を紹介します。

[論理演算子の使用例]

<?php

$age = 22;           // 年齢
$isMan = true;       // 男性であるか

// 20未満 かつ 男性
var_dump($age < 20 && $isMan);
echo "<br />";

// 20未満 または 男性
var_dump($age < 20 || $isMan);
echo "<br />";

// 20未満ではない
var_dump(!($age < 20));

?>

[実行結果]

bool(false)
bool(true)
bool(true)

上記例では、論理演算子を使い次のような結果を返しています。

  • 論理演算子「&&」の例では、「isMan」の条件を満たしているが、「age < 20」の条件は満たしていないので、結果は「false」(2つの条件を満たさないとtrueにはならない)
  • 論理演算子「||」の例では、「age < 20」の条件は満たしていないが、「isMan」の条件を満たしているので、結果は「true」(2つの条件のどちらかを満たせばtrueになる)
  • 論理演算子「!」の例では、「age < 20」の条件ではないので、結果は「true」

終わりに

本記事では、PHPの論理演算子について紹介しました。

次回の記事では、PHPの条件分岐(if文)について紹介します。

helpful