php8.5
Home/ Manual/ bc / functions/ bcmod

bcmod

PHP function Edit on GitHub ✎

(PHP 4, PHP 5, PHP 7, PHP 8)

Get modulus of an arbitrary precision number

Description

bcmod(string $num1, string $num2, int|null $scale = null): string

Get the remainder of dividing num1 by num2. The result has the same sign as num1.

Return Values

Returns the modulus as a string.

Changelog

VersionDescription
8.0.0scale is now nullable.
8.0.0Dividing by 0 now throws a DivisionByZeroError exception instead of returning null.
7.2.0num1 and num2 are no longer truncated to integer, so now the behavior of bcmod() follows fmod() rather than the % operator.
7.2.0The scale parameter was added.

Examples

bcmod() example

php
<?php
bcscale(0);
echo bcmod( '5',  '3'); //  2
echo bcmod( '5', '-3'); //  2
echo bcmod('-5',  '3'); // -2
echo bcmod('-5', '-3'); // -2
?>

bcmod() with decimals

php
<?php
bcscale(1);
echo bcmod('5.7', '1.3'); // 0.5 as of PHP 7.2.0; 0 previously
?>

See Also

Source: reference/bc/functions/bcmod.xml · from the official PHP manual (php/doc-en)