====== (PHP)計算 ====== PHPでは算術演算子を使って計算処理を行う事が出来ます。ここでは四則演算と剰余と累乗のみ紹介しますが、平方根(ルート)・三角関数・指数・対数・四捨五入などの計算も可能です。 ---- ===== 算術演算子 ===== 加算・減算・乗算・除算・余剰・累乗(べき乗)が使えます。(累乗はPHP5.6以降) 加算(+)結果 '.$a1.'

'; $a2=10-3; echo '

減算(-)結果 '.$a2.'

'; $a3=10*3; echo '

乗算(*)結果 '.$a3.'

'; $a4=10/3; echo '

除算(/)結果 '.$a4.'

'; $a5=10%3; echo '

余剰(%)結果 '.$a5.'

'; $a6=10**3; echo '

累乗(**)結果 '.$a6.'

'; ?>
** 実行結果 ** echo '
'; $a1=10+3; echo '

加算(+)結果 '.$a1.'

'; $a2=10-3; echo '

減算(-)結果 '.$a2.'

'; $a3=10*3; echo '

乗算(*)結果 '.$a3.'

'; $a4=10/3; echo '

除算(/)結果 '.$a4.'

'; $a5=10%3; echo '

余剰(%)結果 '.$a5.'

'; $a6=10**3; echo '

累乗(**)結果 '.$a6.'

'; echo '
';
==== 算術演算子の優先順位 ==== 算術演算子には次のような優先順位があります。 * (1)「()」の中を真っ先に計算、二重カッコの場合は一番深いカッコの中から計算 * (2)「* / %」は先に計算、「+ -」は後から計算 * (3) 左側から計算 左から計算 '.$a1.'

'; $a2=1+1/(2*3)+1; echo '

()で右から計算 '.$a2.'

'; $a3=1+2*3; echo '

+より*を先に計算 '.$a3.'

'; $a4=(1+2)*3; echo '

()で+を先*は後に計算 '.$a4.'

'; ?>
echo '
'; $a1=1+1/2*3; echo '

左から計算 '.$a1.'

'; $a2=1+1/(2*3)+1; echo '

()で右から計算 '.$a2.'

'; $a3=1+2*3; echo '

+より*を先に計算 '.$a3.'

'; $a4=(1+2)*3; echo '

()で+を先*は後に計算 '.$a4.'

'; echo '
';
===== インクリメントとデクリメント ===== ''$a++;'' や ''$a--;'' と記述すると$aに1加算したり1減算する事ができます。処理結果は''$a = $a+1;'' や ''$a = $a-1;'' と変わりませんが処理が高速です。 ''='' を使い通常の式として記述すると ''++'' ''--'' の位置で効果が変わり、例えば ''$b = $a++;'' の結果と ''$b = ++$a;'' では$bの答えが変わります。 =なしインクリメントの結果 '.$a1.'

'; $a2=10; $a2--; echo '

=なしデクリメントの結果 '.$a2.'

'; $a3=10; $b3=++$a3; echo '

=ありインクリメント先の結果 $a3='.$a3.' $b3='.$b3.'

'; $a4=10; $b4=$a4++; echo '

=ありインクリメント後の結果 $a4='.$a4.' $b4='.$b4.'

'; $a5=10; $b5=--$a5; echo '

=ありデクリメント先の結果 $a5='.$a5.' $b5='.$b5.'

'; $a6=10; $b6=$a6--; echo '

=ありデクリメント後の結果 $a6='.$a6.' $b6='.$b6.'

'; ?>
** 実行結果 ** $a1=10; $a1++; echo '

=なしインクリメントの結果 '.$a1.'

'; $a2=10; $a2--; echo '

=なしデクリメントの結果 '.$a2.'

'; $a3=10; $b3=++$a3; echo '

=ありインクリメント先の結果 $a3='.$a3.' $b3='.$b3.'

'; $a4=10; $b4=$a4++; echo '

=ありインクリメント後の結果 $a4='.$a4.' $b4='.$b4.'

'; $a5=10; $b5=--$a5; echo '

=ありデクリメント先の結果 $a5='.$a5.' $b5='.$b5.'

'; $a6=10; $b6=$a6--; echo '

=ありデクリメント後の結果 $a6='.$a6.' $b6='.$b6.'

';