PHP 演算子
1. PHP 演算子(Operators)
演算子は、変数や値に対して操作を行うための特別な記号です。
PHP では、演算子を以下のグループに分類しています。
- 算術演算子 (Arithmetic operators)
- 代入演算子 (Assignment operators)
- 比較演算子 (Comparison operators)
- 加算・減算演算子 (Increment/Decrement operators)
- 論理演算子 (Logical operators)
- 文字列演算子 (String operators)
- 配列演算子 (Array operators)
- 条件演算子 (Conditional operators)
2. PHP 算術演算子
算術演算子は、数値に対して加算、減算、乗算などの一般的な数学的計算を行うために使用されます。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| + | 加算 (Addition) | $x + $y | $x と $y の和 |
| - | 減算 (Subtraction) | $x - $y | $x と `$y$ の差 |
| * | 乗算 (Multiplication) | $x * $y | $x と `$y$ の積 |
| / | 除算 (Division) | $x / $y | $x と `$y$ の商 |
| % | 剰余 (Modulus) | $x % $y | $x を $y で割った余り |
| ** | べき乗 (Exponentiation) | $x ** $y | $x の $y 乗 |
3. PHP 代入演算子
代入演算子は、数値を変数に割り当てるために使用されます。
| 代入 | 左記と同様... | 説明 |
|---|---|---|
$x = $y | $x = $y | 代入(左側のオペランドに右側の式の値をセットする) |
$x += $y | $x = $x + $y | 加算して代入 |
$x -= $y | $x = $x - $y | 減算して代入 |
$x *= $y | $x = $x * $y | 乗算して代入 |
$x /= $y | $x = $x / $y | 除算して代入 |
$x %= $y | $x = $x % $y | 剰余を代入 |
4. PHP 比較演算子
比較演算子は、2つの値(数値または文字列)を比較し、ブーリアン(boolean)の結果を返すために使用されます。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| == | 等しい (Equal) | $x == $y | $x と $y が等しい場合に true |
| === | 全等 (Identical) | $x === $y | $x と $y が等しく、かつ型が同じ場合に true |
| != | 等しくない (Not equal) | $x != $y | $x と $y が等しくない場合に true |
| <> | 等しくない (Not equal) | $x <> $y | $x と $y が等しくない場合に true |
| !== | 全等ではない (Not identical) | $x !== $y | $x と $y が等しくないか、型が異なる場合に true |
| > | より大きい (Greater than) | $x > $y | $x が $y より大きい場合に true |
| < | より小さい (Less than) | $x < $y | $x が $y より小さい場合に true |
| >= | 以上 (Greater than or equal to) | $x >= $y | $x が $y 以上である場合に true |
| <= | 以下 (Less than or equal to) | $x <= $y | $x が $y 以下である場合に true |
| <=> | 宇宙船演算子 (Spaceship) | $x <=> $y | $x が $y より小さい、等しい、大きい場合に応じて、それぞれ 0 未満、0、0 より大きい整数を返す(PHP 7 で導入) |
5. PHP 加算・減算演算子
加算・減算(インクリメント・デクリメント)演算子は、変数の値を 1 増減させるために使用されます。
| 演算子 | 左記と同様... | 説明 |
|---|---|---|
| ++$x | 前置インクリメント | $x を 1 加算し、その後 $x を返す |
| $x++ | 後置インクリメント | $x を返し、その後 $x を 1 加算する |
| --$x | 前置デクリメント | $x を 1 減算し、その後 $x を返す |
| $x-- | 後置デクリメント | $x を返し、その後 $x を 1 減算する |
6. PHP 論理演算子
論理演算子は、条件文を組み合わせるために使用され、ブーリアンの結果を返します。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| and | 論理積 (And) | $x and $y | $x と $y が共に true の場合に true |
| or | 論理和 (Or) | $x or $y | $x または $y のどちらかが true の場合に true |
| xor | 排他的論理和 (Xor) | $x xor $y | $x または $y のどちらかが true で、両方ではない場合に true |
| && | 論理積 (And) | $x && $y | $x と $y が共に true の場合に true |
| || | 論理和 (Or) | $x || $y | $x または $y のどちらかが true の場合に true |
| ! | 否定 (Not) | !$x | $x が true でない場合に true |
7. PHP 文字列演算子
文字列演算子は、文字列の結合(連結)に使用されます。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| . | 結合 (Concatenation) | $txt1 . $txt2 | $txt1 と $txt2 を結合したもの |
| .= | 結合代入 (Concatenation assignment) | $txt1 .= $txt2 | $txt1 に $txt2 を追加(結合)する |
8. PHP 配列演算子
配列演算子は、配列の比較に使用されます。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| + | 和集合 (Union) | $x + $y | $x と $y の和集合 |
| == | 等価性 (Equality) | $x == $y | $x と $y が同じキー/値のペアを持つ場合に true |
| === | 同一性 (Identity) | $x === $y | $x と $y が同じキー/値のペアを同じ順序で、かつ同じ型で持つ場合に true |
| != | 不等価 (Inequality) | $x != $y | $x と $y が等しくない場合に true |
| <> | 不等価 (Inequality) | $x <> $y | $x と $y が等しくない場合に true |
| !== | 非同一性 (Non-identity) | $x !== $y | $x と $y が同一(全等)でない場合に true |
9. PHP 条件演算子
条件演算子は、条件に応じて値を設定するために使用されます(if...else の短縮記法です)。
| 演算子 | 名称 | 例 | 結果 |
|---|---|---|---|
| ?: | 三項演算子 | $x = expr1 ? expr2 : expr3 | $x の値を返す。expr1 が true なら $x は expr2 に、expr1 が false なら $x は expr3 になる |
| ?? | Null合体演算子 | $x = expr1 ?? expr2 | $x の値を返す。expr1 が存在し、かつ NULL でないなら $x は expr1 になる。expr1 が存在しない、または NULL なら $x は expr2 になる(PHP 7 で導入) |