This function shows its usefulness on a web site where a user is asked to entered a hexidecimal color code for a color. To prevent breaking W3C standard and having them enter in "neon-green" or the wrong type of code like 355511235.
In conjunction with strlen() you could create a function like this:
function check_valid_colorhex($colorCode) {
// If user accidentally passed along the # sign, strip it off
$colorCode = ltrim($colorCode, '#');
if (
ctype_xdigit($colorCode) &&
(strlen($colorCode) == 6 || strlen($colorCode) == 3))
return true;
else return false;
}ctype_xdigit
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
ctype_xdigit
Референца за `function.ctype-xdigit.php` со подобрена типографија и навигација.
ctype_xdigit
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_xdigit — Провери за карактер(и) што претставуваат хексадецимална цифра
= NULL
Проверува дали сите карактери во дадениот string,
text, се хексадецимални 'цифри'.
Параметри
text-
Тестираниот стринг.
Забелешка:
Ако еден int помеѓу -128 и 255 вклучително е даден, се толкува како ASCII вредност на еден карактер (негативните вредности имаат додадено 256 за да дозволат карактери во опсегот на проширената ASCII. Секој друг цел број се толкува како стринг што ги содржи децималните цифри на цел бројот.
Ги ескејпува специјалните знаци во стринг за употреба во SQL изјаваОд PHP 8.1.0, поминувањето аргумент што не е стринг е застарено. Во иднина, аргументот ќе се толкува како стринг наместо како ASCII кодна точка. Во зависност од наменетото однесување, аргументот треба или да се префрли на string или експлицитно повикување на chr() треба да се направи.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true ако секој знак во text е хексадецимална 'цифра', што е децимална цифра или карактер од
[A-Fa-f] , false инаку. Кога се повикува со празен стринг, резултатот секогаш ќе биде false.
Примери
ако е овозможен колекторот за отпадоци, ctype_xdigit() example
<?php
$strings = array('AB10BC99', 'AR1012', 'ab12bc99');
foreach ($strings as $testcase) {
if (ctype_xdigit($testcase)) {
echo "The string $testcase consists of all hexadecimal digits.\n";
} else {
echo "The string $testcase does not consist of all hexadecimal digits.\n";
}
}
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
The string AB10BC99 consists of all hexadecimal digits. The string AR1012 does not consist of all hexadecimal digits. The string ab12bc99 consists of all hexadecimal digits.
Види Исто така
- ctype_digit() со празно место
- IntlChar::isxdigit() - Провери дали код-поентата е хексадецимална цифра