2009-01-19 7 views
2

Je dois désactiver les alphabets chinois, japonais, cyrilliques (et ainsi de suite) que les utilisateurs de mon site web doivent saisir, au moment de la validation (uniquement la validation côté serveur). En même temps, je veux que tous les caractères accentués en latin soient autorisés. J'utilise symfony 1.1 et PHP 5.2, en utilisant utf-8, bien sûr. Un conseil?Comment refuser des alphabets étrangers dans utf-8 en PHP 5.x (symfony)?

+0

Cela me semble inutile, car les utilisateurs d'autres pays utilisent simplement la translittération (par exemple Pinyin) pour contourner vos limites. Pouvez-vous vivre avec ça? Ou allez-vous également implémenter le dictionnaire anglais? ;) –

Répondre

1

Vous pouvez toujours convertir en latin1 puis revenir en arrière. Cela supprimerait tous les caractères non latin1. Par exemple:

$str = utf8_encode(utf8_decode($str)); 

Je me demande pourquoi vous voulez cela en premier lieu?

0

Si vous devez choisir, vous ne pourrez pas éviter d'utiliser regex et/ou créer une liste de caractères autorisés.

Oui, ce n'est pas facile ni rapide, mais si vous voulez picorer les caractères, vous devrez peut-être vous en rendre compte.

Questions connexes