wpcf7_is_number()
Проверяет, является ли переданный контент числом или строкой, содержащей число.
Эта функция является обёрткой для PHP функции is_numeric(), то есть работает точно также. Отличие в том, что результат внутри пропускается через одноименный фильтр wpcf7_is_number, позволяющий добавить свои произвольные проверки.
Хуки из функции
Возвращает
null. Возвращает true, если контент является числом или строкой, содержащей число или false в противном случае.
Использование
wpcf7_is_number( $number );
Примеры
#1 Проверим, является ли переменная числом
$value = 7;
if ( wpcf7_is_number( $value ) ) {
echo $value . ' это Число';
} else {
echo $value . ' это НЕ число';
}
Выведет 7 это Число.
#2 Варианты проверок
wpcf7_is_number( 42 ); // true wpcf7_is_number( 1337 ); // true wpcf7_is_number( 1337 ); // true wpcf7_is_number( 1337 ); // true wpcf7_is_number( 1337 ); // true wpcf7_is_number( 1337.0 ); // true wpcf7_is_number( '02471' ); // true wpcf7_is_number( '1337e0' ); // true wpcf7_is_number( 9.1 ); // true wpcf7_is_number( '0x539' ); // false wpcf7_is_number( '0b10100111001' ); // false wpcf7_is_number( 'not numeric' ); // false wpcf7_is_number( [] ); // false wpcf7_is_number( null ); // false
Код wpcf7_is_number() wpcf7 is number CF7 6.1.4
function wpcf7_is_number( $text ) {
$result = false;
$patterns = array(
'/^[-]?[0-9]+(?:[eE][+-]?[0-9]+)?$/',
'/^[-]?(?:[0-9]+)?[.][0-9]+(?:[eE][+-]?[0-9]+)?$/',
);
foreach ( $patterns as $pattern ) {
if ( preg_match( $pattern, $text ) ) {
$result = true;
break;
}
}
return apply_filters( 'wpcf7_is_number', $result, $text );
}