Функция является аналогом двух PHP-функция abs( intval( $maybeint ) )
.
Поэтому сначала значение $maybeint
, которое вы передаёте в функцию, обрабатывается функцией intval()
(сейчас это происходит слегка по-другому, но суть та же – (int) $maybeint
), что приводит к получению целого числа из числового/строкового значения. Для наглядности чекаем таблицу:
Как видите, функция не округляет числа до целого в большую или меньшую сторону — она лишь отсекает дробную часть.
Затем к результату применяется функция abs()
, которая возвращает неотрицательное значение числа, иначе говоря находит его модуль.
absint( $maybeint )
Параметры
- $maybeint
- (строка|число|массив) Какое-либо значение, которое нужно очистить или преобразовать в неотрицательное и целое число.
Примеры
// ну с нулем я думаю всё понятно echo absint( 0 ); // 0 // отрицательные числа в итоге становятся положительными echo absint( -572 ); // 572 // числа в виде строк меняют тип данных, текст превращается в 0 echo absint( '152' ); // 152 echo absint( 'привет, ну что как' ); // 0 // у дробных чисел отсекается дробная часть, то есть всё, что идет после запятой(точки) echo absint( 7.9 ); // 7 // хотя есть прикол echo absint( 19.99 * 100 ); // 1998 echo absint( false ); // 0 echo absint( true ); // 1 echo absint( NULL ); // 0 // пустые массивы будут возвращать 0, не пустые - единицу echo absint( array( 100 ) ); // 1 // объекты выдадут PHP-уведомление Notice: Object of class stdClass could not be converted to int // но тем не менее вернут 1 echo absint( new stdClass() ); // 1