(PHP 7, PHP 8)
IntlChar::isxdigit — Vérifie si un point de code est un chiffre hexadécimal
Détermine si le point de code spécifié est un chiffre hexadécimal.
true
pour les caractères de catégorie générale "Nd" (chiffres décimaux)
ainsi que les lettres latines a-f et A-F en ASCII et ASCII complet.
(C'est-à-dire pour les lettres avec des points de code 0041..0046, 0061..0066, FF21..FF26, FF41..FF46.)
Ceci est équivalent à IntlChar::digit($codepoint, 16) >= 0
.
codepoint
La valeur codepoint de type entier
(i.e. 0x2603
pour U+2603 SNOWMAN), ou le caractère encodé en UTF-8 de type chaîne de caractères
(i.e. "\u{2603}"
)
Renvoie true
si
codepoint
est un chiffre hexadécimal, false
sinon. Renvoie null
en cas d'échec.
Exemple #1 Test de différents codepoint
<?php
var_dump(IntlChar::isxdigit("A"));
var_dump(IntlChar::isxdigit("1"));
var_dump(IntlChar::isxdigit("\u{2603}"));
?>
L'exemple ci-dessus va afficher :
bool(true) bool(true) bool(false)
Note:
Pour restreindre la définition des chiffres hexadécimaux uniquement aux caractères ASCII, utilisez :
<?php
$isASCIIHexadecimal = IntlChar::ord($codepoint) <= 0x7F && IntlChar::isxdigit($codepoint);
?>