PHP 8.6.0 Beta 1 is available for testing

bcdivmod

(PHP 8 >= 8.4.0)

bcdivmodПолучает неполное частное и остаток от деления числа произвольной точности

Описание

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

Функция получает целую часть от деления числа num1 на число num2 и остаток от деления.

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

num1

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

num2

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

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

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

Функция возвращает индексный массив (array ), в котором первый элемент – неполное частное в виде значения с типом string , а второй элемент – остаток от деления в виде значения с типом string .

Ошибки

Функция выбрасывает исключение ValueError в следующих случаях:

  • Значение аргумента num1 или num2 оказалось строкой, которую сформировали неправильно с точки зрения допустимого формата числовых строк в модуле BCMath.
  • Значение аргумента scale выходит за пределы допустимого диапазона.

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

Примеры

Пример #1 Пример получения неполного частного и остатка от деления функцией bcdivmod()

<?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() с десятичными дробями

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

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

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

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

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

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

AltStyle によって変換されたページ (->オリジナル) /