PHP Conference Nagoya 2025

ctype_punct

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

ctype_punct Prüft auf Sonderzeichen, d. h. auf druckbare Zeichen die weder Buchstaben noch Ziffern noch Leerzeichen sind.

Beschreibung

ctype_punct(mixed $text): bool

Prüft, ob alle Zeichen in text Sonderzeichen 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.

Warnung

Seit 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 alle Zeichen in text druckbar sind, aber weder Buchstaben noch Ziffern noch Leerzeichen, sonst false. Bei einem Aufruf mit einer leeren Zeichenkette wird immer false zurückgegeben.

Beispiele

Beispiel #1 ctype_punct()-Beispiel

<?php
$strings
= array('ABasdk!@!$#', '!@ # $', '*&$()');
foreach (
$strings as $testcase) {
if (
ctype_punct($testcase)) {
echo
"Der String $testcase enthält ausschließlich Sonderzeichen.\n";
} else {
echo
"Der String $testcase enthält nicht nur Sonderzeichen.\n";
}
}
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Der String ABasdk!@!$# enthält nicht nur Sonderzeichen.
Der String !@ # $ enthält nicht nur Sonderzeichen.
Der String *&$() enthält ausschließlich Sonderzeichen.

Siehe auch

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top