PHPの計算のサンプルです。
確認環境 ・PHP 7 |
目次
計算 | 数値の演算 |
代入演算子 | |
インクリメント(++) | |
デクリメント(--) | |
偶数か奇数か判定する | |
数値に変換 | 文字列を数値に変換する |
数値の演算
数値の演算のサンプルです。
<?php
//足し算
echo 6 + 3; //9
//引き算
echo 6 - 3; //3
//掛け算
echo 6 * 3; //18
//割り算
echo 6 / 3; //2
//割り算の余りがある場合
echo 5 / 3; //1.6666666666667
//割り算の余りを切り捨て
echo floor(5 / 3); //1
//割り算の余りを求める
echo 5 % 3; //2
//べき乗
echo 2 ** 4; //16
18行目は、floorメソッドで小数点以下を切り捨てています。
21行目の%は、割り算の余りを求めます。
24行目は、べき乗です。1つ目の数値を 2つ目の数値でべき乗します(2*2*2*2=16)。
小数点同士の計算
<?php
echo 0.1 * 0.1; //0.01
0.1*0.1は、0.01になります。
※JavaScriptでは、誤差が発生します。
代入演算子
計算がある代入演算子のサンプルです。
計算した後に変数に代入します。
<?php
$a = 6;
echo $a += 3; //a = a + 3 と同じ → 9
$b = 6;
echo $b -= 3; //b = b -3 と同じ → 3
$c = 6;
echo $c *= 3; //c = c * 3 と同じ → 18
$d = 6;
echo $d /= 3; //d = d / 3 と同じ → 2
$e = 5;
echo $e %= 3; //e = e % 3 と同じ → 2
15行目の%は、割り算の余りを求めます。
以下は、PHPマニュアルの代入演算子のリンクです。http://php.net/manual/ja/language.operators.assignment.php
インクリメント
インクリメントのサンプルです。
<?php
$a = 0;
$b = ++$a;
echo $b; //1
echo $a; //1
$c = 0;
$d = $c++;
echo $d; //0
echo $c; //1
3行目は、変数の前に++がついています。値に1を足してから変数に代入します。
8行目は、変数の後ろに++がついています。値を変数に代入してから1を足します。
以下は、PHPマニュアルの加算子/減算子のリンクです。
http://php.net/manual/ja/language.operators.increment.php
デクリメント
デクリメントのサンプルです。
<?php
$a = 0;
$b = --$a;
echo $b; //-1
echo $a; //-1
$c = 0;
$d = $c--;
echo $d; //0
echo $c; //-1
3行目は、変数の前に--がついています。値から1を引いてから変数に代入します。
8行目は、変数の後ろに--がついています。値を変数に代入してから1を引きます。
以下は、PHPマニュアルの加算子/減算子のリンクです。
http://php.net/manual/ja/language.operators.increment.php
偶数か奇数か判定する
偶数か奇数か判定するサンプルです。
<?php
$a = 10;
if ($a % 2 === 0) {
echo "偶数です"; //偶数です
} else {
echo "奇数です";
}
4行目は、割り算の余りを求める%を使用し、余りが0のときは偶数、0以外のときは奇数と判定しています。
文字列を数値に変換する
文字列を数値に変換するサンプルです。
<?php
$a = "10";
$b = (int)$a;
var_dump($b); // int(10)
$c = "20";
$d = intval($c);
var_dump($d); // int(20)
3行目は、intのキャスト演算子で文字列を数値に変換しています。
4行目は、int型です。
7行目は、intvalカンスで文字列を数値に変換しています。
8行目は、int型です。
関連の記事