演算子
これも定番のものですが、ここでは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 *「結合時の評価」とは、演算が行われる相手を表しています。
配列 前へ
次へ 制御文