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 — Chequear posibles caracteres alfabéticos
Verifica si todos los caracteres en la string
entregada,texto
, son alfabéticos. En la
localización C
estándar las letras se limitan a
[A-Za-z]
y ctype_alpha() es
equivalente a (ctype_upper($texto) ||
ctype_lower($texto))
si $texto es un caracter sencillo, aunque
otros idiomas usan letras que no son consideradas como mayúsculas ni
minúsculas.
text
El string de prueba.
Nota:
Si se proporciona un integer entre -128 y 255 inclusive, se interpreta como el valor ASCII de un simple caráter (a los valores negativos se le añade 256 para permitir caracteres en el rango ASCII Extendido). Cualquier otro entero se interpreta como una cadena que contiene los dígitos decimales del entero.
Devuelve true
si cada caracter de texto
es una
letra de la localización actual, false
de lo contrario.
When called with an empty string the result will always be false
.
Ejemplo #1 Un ejemplo de ctype_alpha() (usando la localización predeterminada)
<?php
$cadenas = array('KjgWZC', 'arf12');
foreach ($cadenas as $caso_prueba) {
if (ctype_alpha($caso_prueba)) {
echo "La cadena $caso_prueba consiste completamente de letras.\n";
} else {
echo "La cadena $caso_prueba no consiste completamente de letras.\n";
}
}
?>
El resultado del ejemplo sería:
La cadena KjgWZC consiste completamente de letras. La cadena arf12 no consiste completamente de letras.