php8.5
Home/ Manual/ var / functions/ is_numeric

is_numeric

PHP function Edit on GitHub ✎

(PHP 4, PHP 5, PHP 7, PHP 8)

Finds whether a variable is a number or a numeric string

Description

is_numeric(mixed $value): bool

Determines if the given variable is a number or a numeric string.

Parameters

value

The variable being evaluated.

Return Values

Returns true if value is a number or a numeric string, false otherwise.

Changelog

VersionDescription
8.0.0Numeric strings ending with whitespace ("42 ") will now return true. Previously, false was returned instead.

Examples

is_numeric() examples

php
<?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;
    }
}
?>

The above example will output:

output
'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

is_numeric() with whitespace

php
<?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;
    }
}
?>

8

output
' 42' is numeric
'42 ' is numeric
' 9001' is NOT numeric
'9001 ' is NOT numeric

7

output
' 42' is numeric
'42 ' is NOT numeric
' 9001' is NOT numeric
'9001 ' is NOT numeric

See Also

Source: reference/var/functions/is-numeric.xml · from the official PHP manual (php/doc-en)