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 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_alpha — Verifica se os caracteres são alfabéticos
$text
): bool
Verifica se todos os caracteres na string fornecida,
text
, são alfabéticos.
No padrão C
locale letras são
[A-Za-z]
e ctype_alpha() é
equivalente a (ctype_upper($text) || ctype_lower($text))
se $text é um único caractere, mas outras linguagens possuem letras que
não são considerada nem maiúscula nem minúscula.
text
A string a ser testada.
Retorna true
se todos caracteres em text
é
uma letra do atual locale, false
caso contrário.
Exemplo #1 Um exemplo da ctype_alpha() (usando o locale padrão)
<?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";
}
}
?>
O exemplo acima produzirá:
The string KjgWZC consists of all letters. The string arf12 does not consist of all letters.