ctype_alpha/ctype_alnum関数とは?
PHPのctype_alpha/ctype_alnum関数は、文字列に含まれる文字が英字かどうか、または英字か数字かどうかを判別する関数です。
ctype_alpha/ctype_alnum関数の概要
ctype_alpha関数は、引数に指定された文字列に英字のみが含まれているかどうかを確認します。
ctype_alnum関数は、英字だけでなく、英字か数字のみが含まれているかどうかを確認します。
いずれの関数も、引数に指定された文字列が空文字列の場合、または文字列の長さが0の場合、TRUEを返します。
ctype_alpha/ctype_alnum関数の書き方
ctype_alpha/ctype_alnum関数の書き方は、以下の通りです。
PHP
bool ctype_alpha(string $text);
bool ctype_alnum(string $text);
引数 $text
には、判別したい文字列を指定します。
ctype_alpha/ctype_alnum関数の作成・使用方法
ctype_alpha/ctype_alnum関数を使用するには、以下のように記述します。
PHP
$text = "Hello, world!";
if (ctype_alpha($text)) {
echo "文字列は英字のみで構成されています。";
} else {
echo "文字列に英字以外の文字が含まれています。";
}
このコードは、文字列 $text
が英字のみで構成されているかどうかを確認します。
もし英字のみで構成されていれば、文字列は英字のみで構成されています。
と出力されます。そうでなければ、文字列に英字以外の文字が含まれています。
と出力されます。
ctype_alpha/ctype_alnum関数のスクリプトサンプル
ctype_alpha/ctype_alnum関数のスクリプトサンプルを以下に示します。
PHP
// 英字のみで構成された文字列
$text1 = "Hello, world!";
// 英字と数字で構成された文字列
$text2 = "1234567890Hello, world!";
// 英字以外の文字を含む文字列
$text3 = "あいうえおHello, world!";
// 英字のみで構成されているかどうかを判定
if (ctype_alpha($text1)) {
echo "文字列1は英字のみで構成されています。";
} else {
echo "文字列1に英字以外の文字が含まれています。";
}
// 英字と数字で構成されているかどうかを判定
if (ctype_alnum($text2)) {
echo "文字列2は英字と数字のみで構成されています。";
} else {
echo "文字列2に英字以外の文字が含まれています。";
}
// 英字以外の文字を含むかどうかを判定
if (!ctype_alpha($text3)) {
echo "文字列3は英字以外の文字が含まれています。";
} else {
echo "文字列3は英字のみで構成されています。";
}
このコードの出力は、以下の通りです。
文字列1は英字のみで構成されています。
文字列2は英字と数字のみで構成されています。
文字列3は英字以外の文字が含まれています。
ctype_alpha/ctype_alnum関数特有の事柄・注意点
ctype_alpha/ctype_alnum関数は、ASCIIコードの範囲内の文字のみを判別します。
例えば、Unicode文字列を判別する場合は、mb_ctype_alpha/mb_ctype_alnum関数を使用する必要があります。
ctype_alpha/ctype_alnum関数のまとめ
ctype_alpha/ctype_alnum関数は、文字列に含まれる文字が英字かどうか、または英字か数字かどうかを判別する関数です。
ASCIIコードの範囲内の文字のみを判別するため、Unicode文字列を判別する場合は、mb_ctype_alpha/mb_ctype_alnum関数を使用する必要があります。