bcpowmod
En esta página
bcpowmod
Eleva un número de precisión arbitraria a otro, reducido por un módulo especificado
Descripción#
bcpowmod(string $num, string $exponent, string $modulus, [int $scale]): string
```php
Usa el método de exponenciación rápida para aumentar `num` a la potencia `exponent` con respecto al módulo `modulus`.
## Parámetros
`num`
La base, como un string integral (es decir, la escala tiene que ser cero).
`exponent`
El exponente, como un string integral no negativo (es decir, la escala tiene que ser cero).
`modulus`
El módulo, como un string integral (es decir, la escala tiene que ser cero).
## Valores devueltos
Devuelve el resultado como un string.
## Errores/Excepciones
Esta función lanza un ValueError en los siguientes casos: `num`, `exponent` o `modulus` no es un string numérico con formato válido de BCMath, `num`, `exponent` o `modulus` tiene una parte fraccionaria, `exponent` es un valor negativo, `scale` está fuera del rango válido
Esta función lanza una excepción DivisionByZeroError si `modulus` es `0`.
## Historial de cambios
| Versión | Descripción |
|----|----|
| 8.0.0 | `scale` ahora es nullable. |
| 8.0.0 | Ahora lanza un ValueError en vez de devolver `false` si `exponent` es un valor negativo. |
| 8.0.0 | Dividiendo por `0` ahora lanza una excepción DivisionByZeroError en vez de devolver `false`. |
## Ejemplos
Los siguientes dos comandos son funcionalmente idénticos. La version `bcpowmod` sin embargo, se ejecuta en menos tiempo y admite mas parametros.
```php
Notas#
[!NOTE] Debido a que este método utiliza la operación módulo, podrían obtenerse resultados inesperados en números enteros no positivos.
Véase también#
bcpow, bcmod, BcMath\Number::powmod