(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.
codepointLa 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);
?>