Skip to content

Commit dd70645

Browse files
committed
fix: use divideByExact when available
1 parent 8005a7e commit dd70645

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

src/core/etl/src/Flow/Calculator/Calculator.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,11 @@ public function divide(int|float|string $a, int|float|string $b, ?int $scale = n
3939
{
4040
try {
4141
if ($scale === null && $rounding === null) {
42-
$result = BigDecimal::of($a)->dividedBy(BigDecimal::of($b));
42+
if (\method_exists(BigDecimal::class, 'dividedByExact')) {
43+
$result = BigDecimal::of($a)->dividedByExact(BigInteger::of($b));
44+
} else {
45+
$result = BigDecimal::of($a)->dividedBy(BigDecimal::of($b));
46+
}
4347

4448
if (!$result->hasNonZeroFractionalPart()) {
4549
return $result->toInt();

0 commit comments

Comments
 (0)