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 — Controlla i caratteri alfabetici
Verifica se tutti i caratteri forniti in string,
text
, sono alfanumerici.
Nel locale standard di C
le lettere sono solo
[A-Za-z]
e ctype_alpha() è
equivalente a (ctype_upper($text) || ctype_lower($text))
se $text è solo un carattere singolo, ma altre lingue hanno caratteri che
non sono considerati nè maiuscoli nè minuscoli.
text
La stringa da testare.
Nota:
Se è fornito un integer tra -128 e 255, viene interpretato come il valore ASCII di un singolo carattere (ai valori negativi viene aggiunto 256 in modo da permettere i caratteri Extended ASCII). Qualsiasi altro intero è interpretato come una stringa contenente le cifre decimali dell'intero.
Restituisce true
se ogni carattere in text
è
una lettera dal locale corrente, false
in caso contrario.
When called with an empty string the result will always be false
.
Example #1 Un esempio di ctype_alpha() (usando il locale di default)
<?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";
}
}
?>
Il precedente esempio visualizzerà:
The string KjgWZC consists of all letters. The string arf12 does not consist of all letters.