absint() – преобразует значение в неотрицательное целое число

Функция является аналогом двух PHP-функция abs( intval( $maybeint ) ).

Поэтому сначала значение $maybeint, которое вы передаёте в функцию, обрабатывается функцией intval() (сейчас это происходит слегка по-другому, но суть та же – (int) $maybeint), что приводит к получению целого числа из числового/строкового значения. Для наглядности чекаем таблицу:

Аргумент функции intval()Значение функции intval()
5252
-52-52
5.25
585
'52'52
'какой-то текст'0
array() (пустой массив)0
array( 'n', 9 ) (непустой массив)1
не используется с объектамиNotice: Object of class stdClass could not be converted to int

Как видите, функция не округляет числа до целого в большую или меньшую сторону — она лишь отсекает дробную часть.

Затем к результату применяется функция abs(), которая возвращает неотрицательное значение числа, иначе говоря находит его модуль.

Аргумент функции abs()Значение функции abs()
5252
-5252
00

Для того, чтобы понять, для чего нужны все эти преобразования в реальной жизни, рекомендую посмотреть мой видеоурок про валидацию и очистку данных в WordPress.

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

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.