(PHP 5, PHP 7)
bcpowmod — Возводит одно число в степень другого и возвращает остаток от деления результата на третье число
$base
, string $exponent
, string $modulus
[, int $scale
= 0
] ) : string
Используйте метод быстрого возведения числа
base
в степень
exponent
и получения остатка от деления на
modulus
.
base
Основание степени в виде строки, содержащее целое число.
exponent
Показатель степени в виде строки, содержащее неотрицательное целое число.
modulus
Модуль в виде строки, содержащий целое число.
scale
Этот необязательный параметр используется для установки количества знаков после десятичного разделителя в результате. Если не задано, то, по умолчанию, будет использовано значение заданное глобально с помощью bcscale(), либо 0.
Возвращает результат в виде строки или NULL
, если
modulus
равен 0 или
exponent
отрицательна.
Замечание:
Так как этот метод использует операцию деления по модулю, отрицательные числа могут давать неожидаемый результат.
Следующие выражения дают одинаковый результат. Однако функция bcpowmod() работает быстрее и может принимать большие значения аргументов.
<?php
$a = bcpowmod($x, $y, $mod);
$b = bcmod(bcpow($x, $y), $mod);
// $a == $b.
?>