is_numeric

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

is_numeric Détermine si une variable est un nombre ou une chaîne numérique

Description

function is_numeric(mixed $value): bool

Détermine si la variable donnée est un nombre ou une chaîne numérique.

Liste de paramètres

value

La variable à évaluer.

Valeurs de retour

Retourne true si value est un nombre ou une chaîne numérique, false sinon.

Historique

Version Description
8.0.0 Les chaînes numériques terminant avec des caractères d'espacement blanc ("42 ") retournent désormais true. Auparavant, false était retourné à la place.

Exemples

Exemple #1 Exemple avec is_numeric()

<?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) . " est numérique", PHP_EOL;
} else {
echo
var_export($element, true) . " N'est PAS numérique", PHP_EOL;
}
}
?>

L'exemple ci-dessus va afficher :

'42' est numérique
1337 est numérique
1337 est numérique
1337 est numérique
1337 est numérique
1337.0 est numérique
'0x539' N'est PAS numérique
'02471' est numérique
'0b10100111001' N'est PAS numérique
'1337e0' est numérique
'not numeric' N'est PAS numérique
array (
) N'est PAS numérique
9.1 est numérique
NULL N'est PAS numérique
'' N'est PAS numérique

Exemple #2 is_numeric() avec des caractères d'espacement blanc

<?php
$tests
= [
" 42",
"42 ",
"\u{A0}9001", // espace insécable
"9001\u{A0}", // espace insécable
];

foreach (
$tests as $element) {
if (
is_numeric($element)) {
echo
var_export($element, true) . " est numérique", PHP_EOL;
} else {
echo
var_export($element, true) . " N'est PAS numérique", PHP_EOL;
}
}
?>

Résultat de l'exemple ci-dessus en PHP 8 :

' 42' est numérique
'42 ' est numérique
' 9001' N'est PAS numérique
'9001 ' N'est PAS numérique

Résultat de l'exemple ci-dessus en PHP 7 :

' 42' est numérique
'42 ' N'est PAS numérique
' 9001' N'est PAS numérique
'9001 ' N'est PAS numérique

Voir aussi