【プログラミング】PHPの比較演算子

注目記事

PHPの比較演算子

比較演算子とは?

比較演算子は、プログラミング言語で値を比較するための演算子です。
 

比較演算子の種類

記号 名称 説明
== 等価演算子 左辺と右辺の値が等しいかどうかを比較します。値が同じなら true を、違う場合は false を返します。型の比較は行わず、値のみを比較します。
=== 厳密等価演算子 左辺と右辺の値と型が完全に一致するかどうかを比較します。値と型が同じ場合にのみ true を返し、それ以外の場合は false を返します。
!= 不等価演算子 左辺と右辺の値が等しくない場合に true を返し、等しい場合に false を返します。
!== 厳密不等価演算子 左辺と右辺の値と型が完全に一致しない場合に true を返し、一致する場合に false を返します。
< 小なり演算子 左辺が右辺より小さい場合に true を返し、そうでない場合に false を返します。
> 大なり演算子 左辺が右辺より大きい場合に true を返し、そうでない場合に false を返します。
<= 小なりイコール演算子 左辺が右辺以下の場合に true を返し、そうでない場合に false を返します。
>= 大なりイコール演算子 左辺が右辺以上の場合に true を返し、そうでない場合に false を返します。

 

等価比較と厳密等価比較

等価演算子

等価比較は、型を無視し値のみを比較します。

$a = 5;
$b = '5';

if ($a == $b) {
    echo '$a と $b は等しいです。';
} else {
    echo '$a と $b は等しくありません。'; // こちらが出力される。
}

 

厳密等価演算子

厳密等価比較は、型と値の両方を比較します。

$a = 5;
$b = '5';

if ($a === $b) {
    echo '$a と $b は厳密に等しいです。';
} else {
    echo '$a と $b は厳密に等しくありません。'; // こちらが出力される。
}

 

不等価比較と厳密不等価比較

不等価演算子

$value1 = "5"; // 文字列型
$value2 = 5;   // 整数型

if ($value1 != $value2) {
    echo '$value1 と $value2 は値が異なるので条件は true です。';
} else {
    echo '$value1 と $value2 は値が一致するので条件は false です。';
}

 

厳密不等価演算子

$value1 = "5"; // 文字列型
$value2 = 5;   // 整数型

if ($value1 !== $value2) {
    echo '$value1 と $value2 は値と型が一致しないので条件は true です。';
} else {
    echo '$value1 と $value2 は値と型が一致するので条件は false です。';
}

 

まとめ

個人的にですが、PHPを始めて比較演算子の「==」と「===」の違いが最初わからないというか、「===」って何?という感じだったので、備忘録的に書き留めておきました。

ほぼほぼMicrosoftのVB系やC#などのプログラマーだったので、型の曖昧な比較というものに戸惑いました。

そもそも変数の宣言や型の宣言もしない言語って~って感じで、戸惑いました。

型を意識しない比較というものへの理解や使い分けが、未だに微妙な感情でコーディングしています。

しかし今はWeb系の言語開発が多いので、仕方ないですね。。
 

プログラミング言語PHP

Posted by memotaro