It works if you set the locale correctly:
<?php
setLocale(LC_CTYPE, 'FR_fr.UTF-8');
?>
with this change you will get "yes" "yes"
PHP - Manual: ctype_alpha
2024-11-14
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_alpha — 做纯字符检测
$text
): bool
查看提供的string,text
里面的所有字符是否只包含字符。
在标准的 C
语言环境下,字母仅仅是指
[A-Za-z]
, ctype_alpha() 等同于
(ctype_upper($text) || ctype_lower($text))
如果 text
是简单的单个字符串还好,但是在其他语言中有些字母被认为既不是大写也不是小写。
text
被测试的字符串。
如果在当前语言环境中 text
里的每个字符都是一个字母,那么就返回true
,反之则返回false
。
示例 #1 一个 ctype_alpha() 例子(使用默认的语言环境)
<?php
$strings = array('KjgWZC', 'arf12');
foreach ($strings as $testcase) {
if (ctype_alpha($testcase)) {
echo "The string $testcase consists of all letters.\n";
} else {
echo "The string $testcase does not consist of all letters.\n";
}
}
?>
以上例程会输出:
The string KjgWZC consists of all letters. The string arf12 does not consist of all letters.
注意:
如果给出一个 -128 到 255 之间(含)的int, 将会被解释为该值对应的ASCII字符 (负值将加上 256 以支持扩展ASCII字符). 其它整数将会被解释为该值对应的十进制字符串.