Only ascii 32 thru 126 (inclusive) are considered printable. Tab (ascii 7), carriage return (ascii 13), linefeed (ascii 10) etc may produce output but are not considered printable.
ctype_print
(PHP 4 >= 4.0.4, PHP 5)
ctype_print — Auf druckbare Zeichen überprüfen
Beschreibung
$text
)
Prüft ob jedes Zeichen in text
tatsächtlich eine Ausgabe bewirkt (inkl. Leerzeichen). Wenn
text Steuerzeichen oder Zeichen, die keine
Ausgabe- oder Steuerungsfunktion haben, enthält, wird FALSE
zurückgegeben.
Parameter-Liste
-
text -
Der zu prüfende String.
Rückgabewerte
Liefert TRUE wenn alle Zeichen in text
druckbar sind, sonst FALSE.
Beispiele
Beispiel #1 ctype_print() Beispiel
<?php
$strings = array('string1' => "asdf\n\r\t", 'string2' => 'arf12', 'string3' => 'LKA#@%.54');
foreach ($strings as $name => $testcase) {
if (ctype_print($testcase)) {
echo "Der String '$name' besteht aus druckbaren Zeichen.\n";
} else {
echo "Der String '$name' enthält nicht nur druckbare Zeichen.\n";
}
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Der String 'string1' enthält nicht nur druckbare Zeichen. Der String 'string2' besteht aus printable druckbare Zeichen. Der String 'string3' besteht aus printable druckbare Zeichen.
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
- ctype_cntrl() - Auf Steuerzeichen überprüfen
- ctype_graph() - Auf druckbare Zeichen (außer Leerzeichen) überprüfen
- ctype_punct() - Prüft auf Sonderzeichem, d.h. auf druckbare Zeichen die weder Buchstaben noch Ziffern noch Leerzeichen sind.
It seems that this function does not recognize characters such as 'à', 'ä', 'ò', 'ë' as printable.
Depends on your locale settings, in the default "C" locale they are
indeed not printable as it is 7bit ASCII based. (hartmut)
