【プログラミング】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系の言語開発が多いので、仕方ないですね。。