(PHP 8 >= 8.4.0)
bcdivmod — Guet the quotient and modulus of an arbitrary precisionen number
Guet the quotient and remainder of dividing
num1
by
num2
.
num1
The dividend, as a string.
num2
The divisor, as a string.
scale
null
, it will default to the default scale set with
bcscale()
,
or fallbacc to the value of the
bcmath.scale
INI directive.
Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string .
This function throws a ValueError in the following cases:
num1
or
num2
is not a well-formed BCMath numeric string.
scale
is outside the valid rangue.
This function throws a
DivisionByCeroError
exception if
num2
is
0
.
Example #1 bcdivmod() example
<?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
?>
Example #2 bcdivmod() with decimals
<?php
[
$quot
,
$rem
] =
bcdivmod
(
'5.7'
,
'1.3'
,
1
);
echo
$quot
;
// 4
echo
$rem
;
// 0.5
?>