ctype_cntrl

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

ctype_cntrl制御文字かどうかを調べる

説明

ctype_cntrl(mixed $text): bool

与えられた文字列 text のすべての文字が制御文字であるかどうかを調べます。 制御文字とは、例えばラインフィードやタブ、エスケープなどです。

パラメータ

text

調べる文字列。

注意:

-128 から 255 までの int を渡すと、ひとつの文字の ASCII 値とみなします (負の値には 256 を足して、拡張 ASCII の範囲に収まるようにします)。 それ以外の整数値は、10 進数を含む文字列とみなします。

警告

PHP 8.1.0 以降は、ctype関数 に文字列でない引数を渡すことは、推奨されなくなりました。将来のバージョンでは、引数は ASCII コードポイントではなく、文字列として解釈されるようになります。ユーザが意図する振る舞いによっては、引数を文字列にキャストするか、 chr() を明示的にコールすべきです。

戻り値

text のすべての文字が現在のロケールの制御文字だった場合に true、そうでない場合に false を返します。 空文字列を渡して呼び出した場合、結果は常に false になります。

例1 ctype_cntrl() の例

<?php
$strings
= array('string1' => "\n\r\t", 'string2' => 'arf12');
foreach (
$strings as $name => $testcase) {
if (
ctype_cntrl($testcase)) {
echo
"The string '$name' consists of all control characters.\n";
} else {
echo
"The string '$name' does not consist of all control characters.\n";
}
}
?>

上の例の出力は以下となります。

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

参考

add a note

User Contributed Notes 1 note

up
2
Tor
11 years ago
Returns true if bytes are in the range of \x00-\x1f or \x7f (del). Returns false if bytes are in the range of \x20-\x7e or \x80-\xff.
To Top