ctype_xdigit

(PHP 4 >= 4.0.4, PHP 5)

ctype_xdigit Auf Hexadezimalziffern überprüfen

Beschreibung

bool ctype_xdigit ( string $text )

Prüft jedes Zeichen in text eine Hexadezimalziffer ist, also eine Dezimalziffer oder ein Zeichen aus [A-Fa-f].

Parameter-Liste

text

Der zu prüfende String.

Rückgabewerte

Liefert TRUE wenn jedes Zeichen in text eine Hexadezimalziffer ist, sonst FALSE.

Beispiele

Beispiel #1 ctype_xdigit() Beispiel

<?php
$strings 
= array('AB10BC99''AR1012''ab12bc99');
foreach (
$strings as $testcase) {
    if (
ctype_xdigit($testcase)) {
        echo 
"Der String $testcase besteht aus Hexadezimalziffern.\n";
    } else {
        echo 
"Der String $testcase enthält nicht nur Hexadezimalziffern.\n";
    }
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Der String AB10BC99 besteht aus Hexadezimalziffern.
Der String AR1012 enthält nicht nur Hexadezimalziffern.
Der String ab12bc99 besteht aus Hexadezimalziffern.

Anmerkungen

Hinweis:

Wenn ein integer zwischen -128 und 255 (inklusive) übergeben wird, wird dieser als ASCII Wert eines einzelnen Buchstabens interpretiert (zu negativen Werten wird 256 dazu addiert, um Buchstaben des Erweiterten ASCII Zeichensatzes zu erlauben). Alle anderen Integer werden wie ein String interpretiert, welcher die dezimalen Ziffern des Integers enthält.

Siehe auch

add a note add a note

User Contributed Notes 1 note

up
1
tom at hgmail dot com
8 years ago
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;
}
To Top