【PHP】演算子の基本ガイド:実用例を交えて解説

一口に演算子と言っても、「+」や「-」などの算術演算子から、「==」や「!=」などの比較演算子など種類は多岐にわたります。この記事ではこれらをまとめて解説していきます。

算術演算子

足し算、引き算、掛け算、割り算など。

演算子用例意味
+A + BAとBを足す
A – BAからBを引く
*A * BAにBを掛ける
/A / BAをBで割る
%A % BAをBで割った「余り」を求める
echo 8 + 2; // 出力:10
echo 8 - 2; // 出力:6
echo 8 * 2; // 出力:16
echo 8 / 2; // 出力:4
echo 8 % 2; // 出力:0

使い道がイメージし辛い「%」ですが、偶数・奇数の判定に使うことができます。

nが偶数の場合、2で割り切れるため n % 2 の計算結果は0になります。
nが奇数の場合、2で割り切れないためn % 2 の計算結果は1になります。

echo 2 % 2 // 0
echo 1 % 2 // 1
echo 5 % 2 // 1
echo 10 % 2 // 0

代入演算子

変数に値を代入するために使用されます。

演算子用例意味
=A = BAにBを代入する
+=A += BAにBを足す
(A = A + B)
-=A -= BAからBを引く
(A = A – B)
*=A *= BAにBを掛ける
(A = A * B)
/=A /= BAをBで割る
(A = A / B)
%=A %= BAをBで割った「余り」を求める
(A = A % B)
$a = 10;
$a += 2; // $a:12
$a *= 2; // $a:24
$a %= 2; // $a:0

比較演算子

2つの値を比較するために使用されます。

演算子用例意味
==A == B同値のときtrue
(型を比較しない)
===A === B同値のときtrue
(型も比較する)
!=A != B同値でないときtrue
(型を比較しない)
!==A !== B同値でないときtrue
(型も比較する)
>A > B左辺が右辺より大きいときtrue
<A < B左辺が右辺より小さいときtrue
>=A >= B左辺が右辺以上のときtrue
<=A <= B左辺が右辺以下のときtrue

「==」および「!=」はゆるい比較、「===」および「!==」は厳密な比較です。

int型の 5 とstring型の “5” は「==」だとtrueですが、「===」だとfalseになります。他にも空文字「””」とnullの比較は「==」だと同値になってしまったりします。

相違点が多いので、詳細はphp公式ドキュメントをご覧ください。
https://www.php.net/manual/ja/types.comparisons.php

$a = 5;
$b = "5";
var_dump($a == $b);   // bool(true)
var_dump($a === $b);  // bool(false)
var_dump($a < 10);    // bool(true)

論理演算子

論理演算子は条件の組み合わせに使用されます。

演算子用例意味
&&A && BAかつBのときtrue
||A || BAもしくはBのときtrue
!!AAでなければtrue
$is_sunny = true; // 晴れかどうか
$is_warm = false; // 暖かいかどうか

if ($is_sunny && $is_warm) {
    echo "ピクニック日和です!";
} elseif ($is_sunny || $is_warm) {
    echo "まあまあの天気です。";
} else {
    echo "家でゆっくり過ごしましょう。";
}

その他の演算子

文字列結合演算子

文字列を連結するための演算子です。

演算子用例意味
.A . BAとBを結合して文字列で返す
$first_name = "John";
$last_name = "Doe";
echo $first_name . " " . $last_name;  // 出力: John Doe

三項演算子

条件に応じて値を返します。

演算子用例意味
条件 ? 値1 : 値2A ? B : CAがtrueのときBを、falseのときCを返す
$is_member = true;
$price = $is_member ? '¥200' : '¥300';
echo $price // 出力:¥200

// 以下のif-else文と同等です
$is_member = true;
if($is_member) {
    $price = '¥200';
} else {
    $price = '¥300';
}
echo $price // 出力:¥200

Null合体演算子

条件がnullの場合は指定した値を返します。

演算子用例意味
??A ?? BAがnullのときBを、null以外のときAを返す
$students_count = ['1A' => '32', '1B' => '30', '2A' => '30',];
echo $students_count['3C'] ?? 'No such classrooms';

まとめ

この記事では、PHPプログラミングで最も頻繁に使用される基本的な演算子を紹介しました。これらの演算子を理解し、適切に使用することで、シンプルで効果的なPHPコードを書くことができます。練習を重ねることで、これらの演算子の使用に慣れていきましょう。

次のステップとしては、条件文(if-else)、ループ(for, while)、関数などのPHPの基本構造と組み合わせて、これらの演算子を使用する方法を学ぶことをお勧めします。

コメント