bcpowmod

(PHP 5)

bcpowmod --  任意精度数値のべき乗の、指定した数値による剰余

説明

string bcpowmod ( string x, string y, string modulus [, int scale] )

modulus で割った余りを求めることを考慮して、 xy 乗を高速に計算します。 オプションの scale パラメータは、結果における 小数点以下の桁数を指定するために使用します。

注意: このメソッドでは剰余計算を行っているので、自然数ではない数を 指定すると予期せぬ結果となります。自然数とは 0 以外の正の整数です。

以下の 2 つの文は機能的に同じです。しかし bcpowmod() バージョンのほうが実行時間が早いうえ、 より大きな値の計算が可能です。

<?php
$a
= bcpowmod($x, $y, $mod);

$b = bcmod(bcpow($x, $y), $mod);

// $a と $b は互いに等しい。

?>

参考

bcpow() そして bcmod()