(PHP 4, PHP 5, PHP 7, PHP 8)
is_numeric — Finds whether a variable is a number or a numeric string
Determines if the given variable is a number or a numeric string.
value
The variable being evaluated.
Returns true
if value
is a number or a
numeric string,
false
otherwise.
Версія | Опис |
---|---|
8.0.0 |
Numeric strings ending with whitespace ("42 " ) will now
return true . Previously, false was returned instead.
|
Приклад #1 is_numeric() examples
<?php
$tests = array(
"42",
1337,
0x539,
02471,
0b10100111001,
1337e0,
"0x539",
"02471",
"0b10100111001",
"1337e0",
"not numeric",
array(),
9.1,
null,
'',
);
foreach ($tests as $element) {
if (is_numeric($element)) {
echo var_export($element, true) . " is numeric", PHP_EOL;
} else {
echo var_export($element, true) . " is NOT numeric", PHP_EOL;
}
}
?>
Поданий вище приклад виведе:
'42' is numeric 1337 is numeric 1337 is numeric 1337 is numeric 1337 is numeric 1337.0 is numeric '0x539' is NOT numeric '02471' is numeric '0b10100111001' is NOT numeric '1337e0' is numeric 'not numeric' is NOT numeric array ( ) is NOT numeric 9.1 is numeric NULL is NOT numeric '' is NOT numeric
Приклад #2 is_numeric() with whitespace
<?php
$tests = [
" 42",
"42 ",
"\u{A0}9001", // non-breaking space
"9001\u{A0}", // non-breaking space
];
foreach ($tests as $element) {
if (is_numeric($element)) {
echo var_export($element, true) . " is numeric", PHP_EOL;
} else {
echo var_export($element, true) . " is NOT numeric", PHP_EOL;
}
}
?>
В PHP 8 поданий вище приклад виведе:
' 42' is numeric '42 ' is numeric ' 9001' is NOT numeric '9001 ' is NOT numeric
В PHP 7 поданий вище приклад виведе:
' 42' is numeric '42 ' is NOT numeric ' 9001' is NOT numeric '9001 ' is NOT numeric