ctype_xdigit
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_xdigit — Prüft auf Zeichen, die eine Hexadezimalziffer darstellen
Beschreibung
Prüft, ob alle Zeichen in text
hexadezimale
"Ziffern" sind.
Parameter-Liste
-
text
-
Der zu prüfende String.
Hinweis:
Wenn ein int 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 eine Zeichenkette interpretiert, welche die dezimalen Ziffern des Integers enthält.
WarnungSeit PHP 8.1.0 ist die Übergabe eines Nicht-String-Arguments veraltet. In Zukunft wird das Argument statt als ASCII-Codepunkt als String interpretiert werden. Je nach beabsichtigtem Verhalten sollte das Argument entweder in String umgewandelt werden, oder es sollte ein expliziter Aufruf von chr() erfolgen.
Rückgabewerte
Gibt true
zurück, wenn jedes Zeichen in text
eine
hexadezimale "Ziffer" ist, d. h. eine Dezimalziffer oder ein Zeichen aus
[A-Fa-f]
, sonst false
.
Bei einem Aufruf mit einer leeren Zeichenkette wird immer false
zurückgegeben.
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.