(PHP 8 >= 8.4.0)
bcdivmod — Devuelve el cociente y el resto de un número de precisión arbitraria
Devuelve el cociente y el resto de la división de num1
por
num2
.
num1
El dividendo, como una cadena.
num2
El divisor, como una cadena.
scale
null
, se establecerá por defecto en la escala predeterminada establecida con bcscale(),
o se utilizará el valor de la directiva INI
bcmath.scale
.
Devuelve un array indexado donde el primer elemento es el cociente en forma de string y el segundo elemento es el resto en forma de string.
Esta función lanza una excepción ValueError en los siguientes casos:
num1
o num2
no es una cadena numérica bien formada de BCMath.
scale
está fuera del rango válido.
Esta función lanza una excepción DivisionByZeroError
si num2
es 0
.
Ejemplo #1 Ejemplo de bcdivmod()
<?php
bcscale(0);
[$quot, $rem] = bcdivmod('5', '3');
echo $quot; // 1
echo $rem; // 2
[$quot, $rem] = bcdivmod('5', '-3');
echo $quot; // -1
echo $rem; // 2
[$quot, $rem] = bcdivmod('-5', '3');
echo $quot; // -1
echo $rem; // -2
[$quot, $rem] = bcdivmod('-5', '-3');
echo $quot; // 1
echo $rem; // -2
?>
Ejemplo #2 bcdivmod() con decimales
<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo $quot; // 4
echo $rem; // 0.5
?>