演算子

 これも定番のものですが、ここではPHPで使える演算子(Operator)を、それぞれ一覧表示して行きたいと思います。

代数演算子

 代数演算子には、加算、減算、乗算、除算があります。これらは、数値型(整数型、倍精度型)に対して行われます。

演算子

行う演算

例の結果

+ 加算 5 + 2 7
- 減算 5 - 2 3
/ 除算 5 / 2 2.5
* 乗算 5 * 2 10
% 剰余演算 5 % 2 1

 2つのオペランドが整数の場合(又は整数に変換された文字列の場合)、除算は整数値(整数の割算の結果)を返します。2つのオペランドのどちらかが実数値の場合、実数で割算が行われます。

代入演算子

 代入演算子「=」は、右辺にあるものを左辺に代入する演算子です。この代入演算子とその他の演算子を組み合わせる事で、以下の演算子も代入演算子と考える事が出来ます。

演算子

例と同等の演算

+= $x += 5 $x = $x + 5
-= $x -= 5 $x = $x - 5
/= $x /= 5 $x = $x / 5
*= $x *= 5 $x = $x * 5
%= $x %= 5 $x = $x % 5
.= $x .= "text" $x = $x . "text"

結合演算子

 結合演算子ドット「」は、文字列を結合させる為に使います。以下に実例を示します。

print "ようこそ" . "PHPの世界へ!";
         ↓以下のように出力されます。
ようこそPHPの世界へ!

結合演算子を使った出力は、全て文字列型になります。以下に実例を示します。

print "1 + 1 = " . (1 + 1);
   ↓以下のように出力されます。
1 + 1 = 2

比較演算子

 比較演算子は、2つの値を比較する場合に使われます。尚、「===」は、PHP4の新しい機能です。

演算子

名前

例の結果($x=7の場合)

== 等しい $x == 5 false
=== 等しい(型も含む) $x === 5 false
!= 等しくない $x != 5 true
!== 等しくない(型も含む) $x !== 5 true
< より少ない $x < 5 false
> より多い $x > 5 true
<= より少ないか等しい $x <= 5 false
>= より多いか等しい $x >= 5 true

条件演算子として、他に「?:」(又は、ternary)演算子があります。条件演算子の書式は、以下の通りです。

(式1) ? (式2) : (式3);

*式1がtrueの場合に式2を、式1がfalseの場合に式3を値とします。

加算子・減算子

 ある変数に1を加えたり、1を引いたりする場合に、その書式を省略して簡単に表す時に使います。

演算子

名前

効果

++$a 前置加算子 $aに1を加え、$aを返します。
$a++ 後置加算子 $aを返し、$aに1を加えます。
--$a 前置減算子 $aから1を引き、$aを返します。
$a-- 後置減算子 $aを返し、$aから1を引きます。

*前置型と後置型とで計算結果が異なるので、要注意!

論理演算子

 論理演算子は、trueやfalseに対して論理演算を行います。

演算子

名前

効果

例の結果

|| 論理和 左側または右側がtrueの場合 true || false true
or 論理和 左側または右側がtrueの場合 true or false true
xor 排他的論理和 左側または右側がtrueで、かつ両方ともtrueでない場合 true xor false false
&& 論理積 左側と右側が共にtrueの場合 true && false false
and 論理積 左側と右側が共にtrueの場合 true and false false
! 否定 右側がfalseの場合 !true false

エラー制御演算子

 エラー制御演算子「@」については、その用法がちょっと特殊な為、必要に応じて別途専門書等をご参照下さい。

実行演算子

 実行演算子は、バッククォート「`」で囲まれた部分をシェルコマンドとして実行して、その結果を返します。詳しくは、別途専門書等をご参照下さい。

演算の優先順位

 PHPの場合の演算の優先順位を以下に示します。2つの式が結合している場合、この点を十分考慮に入れないと、計算結果が異なる結果となる恐れがあります。下の表は、優先順位が高いものから演算子を並べたものです。

結合時の評価

演算子

! ++ -- (cast) @
* / %
+ -
結合しない < <= > >=
結合しない == === !=
&&
||
?:
= += -= *= /= .= %= &=
and
xor
or

*「結合時の評価」とは、演算が行われる相手を表しています。

配列 前へ

HOME

次へ 制御文