Math関数/BC Math関数

Math 関数

intdiv(int $num1, int $num2): int

num1 を num2 で割った整数商を返します。

bindec(string $binary_string): int|float

2 進数 を 10 進数に変換する。
サイズの問題により、必要に応じて float となることもあります。

decbin(int $num): string

10 進数を 2 進数に変換する。

octdec(string $octal_string): int|float

8 進数を 10 進数に変換する。

decoct(int $num): string

10 進数を 8 進数に変換する。

hexdec(string $hex_string): int|float

16 進数を 10 進数に変換する。

dechex(int $num): string

10 進数を 16 進数に変換する。

sqrt(float $num): float

num の平方根(ルート)を返します。

ceil(int|float $num): float

端数の切り上げ

floor(int|float $num): float

端数の切り捨て

round(int|float $num, int $precision = 0, int $mode = PHP_ROUND_HALF_UP): float

浮動小数点数を丸める。四捨五入。

pow(mixed $num, mixed $exponent): int|float|object

num の exponent 乗を返します。

exp(float $num): float

e を num 乗した値を返します。
‘e’ は自然対数の底で、およそ 2.718282 です。

base_convert(string $num, int $from_base, int $to_base): string

数値の基数を任意に変換する。

//16進数を2進数に変換する
$hexadecimal = 'a37334';
echo base_convert($hexadecimal, 16, 2);

BC Math 関数

任意精度の演算をサポート。
高い精度が必要な場合に利用される。

bcadd(string $num1, string $num2, ?int $scale = null): string

2つの任意精度の数値を加算する。

bccomp(string $num1, string $num2, ?int $scale = null): int

ふたつのオペランドが等しければ 0、 num1 が num2 より大きければ戻り値は 1、小さければ -1 を返します。

bcsub(string $left_operand, string $right_operand, int $scale = 0): string

任意精度数値の減算を行う。$scale は小数点以下の桁数。

bcmul(string $num1, string $num2, ?int $scale = null): string

2つの任意精度数値の乗算を行う。$scale は小数点以下の桁数。

bcdiv(string $num1, string $num2, ?int $scale = null): string

2つの任意精度数値で除算を行う。$scale は小数点以下の桁数。