(PHP 5, PHP 7)
bcpowmod — Eleva un número de precisión arbitraria a otro, reducido por un módulo especificado
$left_operand = ""
, string $right_operand = ""
, string $modulus = ""
[, int $scale = int
] ) : string
Usa el método de exponenciación rápida para aumentar el
left_operand a la potencia
right_operand con respecto al módulo
modulus.
left_operandEl left operand, como una cadena.
right_operandEl right operand, como una cadena.
modulusEl modulus, como una cadena.
scaleEste parámetro opcional es usado para establecer el número de dígitos después del punto decimal en el resultado. Si se omite, su valor será el de la escala establecida globalmente con la función bcscale(), o se recurrirá a 0 si este valor no ha sido establecido.
Devuelve el resultado como una cadena, o NULL si modulus
es 0.
Nota:
Debido a que este método utiliza la operación módulo, podrían obtenerse resultados inesperados en números enteros no positivos.
Los siguientes dos comandos son funcionalmente idénticos. La version bcpowmod() sin embargo, se ejecuta en menos tiempo y admite mas parametros.
<?php
$a = bcpowmod($x, $y, $mod);
$b = bcmod(bcpow($x, $y), $mod);
// $a and $b are equal to each other.
?>