Ce face ctype_xdigit
ctype_xdigit returnează true dacă fiecare caracter este o cifră sau o literă de la a la f (mare sau mică). Este utilă pentru culori HTML, token-uri generate cu bin2hex sau sume de control (MD5, SHA).
Un text gol dă false. Prefixe ca # sau 0x trebuie eliminate înainte.
Parametri
| Parametru | Descriere |
|---|---|
$text |
Textul verificat. |
Ce returnează
true dacă textul nu este gol și are doar cifre hexazecimale.
Exemple
Exemplul 1: Culori HTML
<?php
foreach (["#1a2B3c", "#fff", "#12345g", "#"] as $culoare) {
$hex = ltrim($culoare, "#");
$valid = ctype_xdigit($hex) && in_array(strlen($hex), [3, 6]);
echo "$culoare => " . ($valid ? "validă" : "invalidă") . "\n";
}
Rezultat
#1a2B3c => validă
#fff => validă
#12345g => invalidă
# => invalidă
Exemplul 2: Token primit într-un link
<?php
$token = "9f86d081884c7d659a2feaa0c55ad015";
var_dump(strlen($token) === 32 && ctype_xdigit($token));
Rezultat
bool(true)
Greșeli frecvente
- Verifici o culoare cu
#în față și primești mereufalse. Elimină întâi#.
Comenzi înrudite
ctype_digit: Verifică dacă un text conține doar cifre (0-9).bin2hex / hex2bin: bin2hex transformă un text (sau date binare) în cifre hexazecimale, iar hex2bin face inversul.ctype_alnum: Verifică dacă un text conține doar litere și cifre, fără spații sau alte semne.