PHP Conference Nagoya 2025

bcdivmod

(PHP 8 >= 8.4.0)

bcdivmodGet the quotient and modulus of an arbitrary precision number

Описание

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

Get the quotient and remainder of dividing num1 by num2.

Список параметров

num1

Делимое в виде строки.

num2

Делитель в виде строки.

scale
Параметр устанавливает количество знаков после десятичного разделителя, которое вернётся в результате. При значении null количество знаков после десятичного разделителя равняется значению по умолчанию, которое установили для параметра глобально функцией bcscale(), или резервному значению, которое указали в INI-директиве bcmath.scale, если глобальное значение не установили.

Возвращаемые значения

Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string.

Функция выбрасывает исключение DivisionByZeroError, если число num2 равно 0.

Примеры

Пример #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
?>

Пример #2 bcdivmod() with decimals

<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo
$quot; // 4
echo $rem; // 0.5
?>

Смотрите также

  • bcdiv() - Делит два числа произвольной точности
  • bcmod() - Получает остаток от деления чисел произвольной точности
Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top