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 — Check for printable character(s)
Description
bool ctype_print
( string $text
)
Checks if all of the characters in the provided string, text, are printable.
Parameters
- text
-
The tested string.
Return Values
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.
Examples
Example #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";
}
}
?>
The above example will output:
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.
See Also
- ctype_cntrl() - Check for control character(s)
- ctype_graph() - بررسی برای کاراکترهای قابل پرینت به جز فاصله
- ctype_punct() - Check for any printable character which is not whitespace or an alphanumeric character
Anonymous ¶
11 months ago
flatline at greyhat dot nl ¶
9 years ago
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)
