(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.
num1El dividendo, como una cadena.
num2El divisor, como una cadena.
scale
Este parámetro se utiliza para establecer el número de dígitos después del punto decimal en el resultado.
Si es 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
?>