bcmod

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

bcmodGet modulus of an arbitrary precision number

Description

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

Get the remainder of dividing num1 by num2. Unless num2 is zero, the result has the same sign as num1.

Parameters

num1

The dividend, as a string.

num2

The divisor, as a string.

Return Values

Returns the modulus as a string, or null if num2 is 0.

Changelog

Version Description
8.0.0 scale is now nullable.
7.2.0 num1 and num2 are no longer truncated to integer, so now the behavior of bcmod() follows fmod() rather than the % operator.
7.2.0 The scale parameter was added.

Examples

Example #1 bcmod() example

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

Example #2 bcmod() with decimals

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

See Also

  • bcdiv() - Divide two arbitrary precision numbers