ctype_punct

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

ctype_punct 空白、英数字以外の出力可能な文字かどうかを調べる

説明

ctype_punct(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_punct() の例

<?php
$strings 
= array('ABasdk!@!$#''!@ # $''*&$()');
foreach (
$strings as $testcase) {
    if (
ctype_punct($testcase)) {
        echo 
"The string $testcase consists of all punctuation.\n";
    } else {
        echo 
"The string $testcase does not consist of all punctuation.\n";
    }
}
?>

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

The string ABasdk!@!$# does not consist of all punctuation.
The string !@ # $ does not consist of all punctuation.
The string *&$() consists of all punctuation.

参考

  • ctype_cntrl() - 制御文字かどうかを調べる
  • ctype_graph() - 空白以外の印字可能な文字かどうかを調べる

関連キーワード:  文字, 空白, 出力, ctype, 英数字, punct, punctuation, string, ASCII, all