ctype_print

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

ctype_printCheck for printable character(s)

Opis

ctype_print ( string $text ) : bool

Checks if all of the characters in the provided string, text, are printable.

Parametry

text

The tested string.

Zwracane wartości

Returns TRUE if every character in text will actually create output (including blanks). Returns FALSE if text contains control characters or characters that do not have any output or control function at all.

Przykłady

Przykład #1 A ctype_print() example

<?php
$strings 
= array('string1' => "asdf\n\r\t"'string2' => 'arf12''string3' => 'LKA#@%.54');
foreach (
$strings as $name => $testcase) {
    if (
ctype_print($testcase)) {
        echo 
"The string '$name' consists of all printable characters.\n";
    } else {
        echo 
"The string '$name' does not consist of all printable characters.\n";
    }
}
?>

Powyższy przykład wyświetli:

The string 'string1' does not consist of all printable characters.
The string 'string2' consists of all printable characters.
The string 'string3' consists of all printable characters.

Notatki

Informacja:

Jeśli podana zostanie zmienna typu integer o wartości z zakresu -128 i 255 włącznie, jest ona interpretowana jako wartość ASCII dla pojedynczego znaku (do ujemnych wartości dodaje się liczbę 256 aby przejść do zakresu wartości występujących w rozszerzonej tablicy ASCII). Każda inna zmienna całkowita jest interpretowana jako ciąg znakowy zwierający cyfry dziesiętne liczby całkowitej.

Zobacz też:

  • ctype_cntrl() - Check for control character(s)
  • ctype_graph() - Check for any printable character(s) except space
  • ctype_punct() - Check for any printable character which is not whitespace or an alphanumeric character

add a note add a note

User Contributed Notes 2 notes

up
4
Anonymous
8 years ago
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.
up
1
ClayDragon
2 years ago
As mentioned above, only ASCII characters from 32 to 126 are considered printable, all others, including UTF-8 encoded characters are always considered unprintable, no matter what your locale settings are. Therefore, e.g. German "ä", the Euro sign "€" or the British pound symbol "£" will never be printable. If you need to check any characters for "printability" beyond the standard ASCII range, use a regular expression or write a specific function yourself.

See also this discussion: https://grokbase.com/t/php/php-i18n/102tkqe6rk/ctype-print-returns-false-for-british-pound-symbol-and-non-ascii-symbols
To Top