Оригинальная заметка состояла из сигнатуры функции. Дополняем её примерами и важным отличием от стандартного округления PHP.

Синтаксис roundEx

roundEx($value, $precision = 0);

$value — исходное число, $precision — количество знаков после запятой. Согласно документации 1С‑Битрикс функция округляет значение вверх.

Примеры

roundEx(12.341, 2); // 12.35
roundEx(12.001, 0); // 13
roundEx(12.000, 0); // 12

Поведение ближе к направленному округлению вверх, чем к обычному round(). Поэтому результат может отличаться от привычного математического округления.

Когда это действительно нужно

Функция удобна, когда бизнес‑правило прямо требует не занижать дробное значение: например, при расчёте количества упаковок или дискретных единиц. Для денежных расчётов сначала зафиксируйте правила точности, валюты и налогов — механически заменять round() на roundEx() нельзя.

Проверяйте отрицательные значения.«Вверх» и «дальше от нуля» — разные правила. Добавьте тесты на положительные, отрицательные и граничные числа.