bcpowmod

(PHP 5, PHP 7, PHP 8)

bcpowmod Возводит одно число в степень другого и возвращает остаток от деления результата на третье число

Описание

bcpowmod(
    string $num,
    string $exponent,
    string $modulus,
    ?int $scale = null
): string

Используйте метод быстрого возведения числа num в степень exponent и получения остатка от деления на modulus.

Список параметров

num

Основание степени в виде строки, содержащее целое число.

exponent

Показатель степени в виде строки, содержащее неотрицательное целое число.

modulus

Модуль в виде строки, содержащий целое число.

scale

Этот необязательный параметр используют для установки количества знаков после десятичного разделителя в результате. Если не задано, то, по умолчанию, будет использовано значение заданное глобально с помощью bcscale(), либо 0.

Возвращаемые значения

Возвращает результат в виде строки или false, если modulus равен 0 или exponent отрицательна.

Список изменений

Версия Описание
8.0.0 scale теперь допускает значение null.

Примеры

Следующие выражения дают одинаковый результат. Однако функция bcpowmod() работает быстрее и может принимать большие значения аргументов.

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

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

// $a == $b.

?>

Примечания

Замечание:

Так как этот метод использует операцию деления по модулю, отрицательные числа могут давать неожидаемый результат.

Смотрите также

  • bcpow() - Возведение в степень чисел с произвольной точностью
  • bcmod() - Получает остаток от деления чисел с произвольной точностью