UTF-8 и IsAlpha () в PHP

Я работаю над приложением, которое поддерживает несколько языков и имеет функциональность, которая пытается использовать язык, запрашиваемый браузером, а также позволяет вручную переопределить эту функцию. Эта часть работает отлично и выбирает правильные шаблоны, метки и т. Д.

Пользователь должен иногда вводить текст самостоятельно, и здесь я сталкиваюсь с проблемами, потому что приложение должно принимать даже «сложные» языки, такие как китайский и русский. До сих пор я позаботился о вещах, упомянутых в других публикациях, т.е.

призваниеmb_internal_encoding( 'UTF-8' )установка правильной кодировки при рендеринге веб-страниц сmeta http-equiv=Content-Type content=text/html;charset=UTF-8 (формат адаптирован из-за ограничений переполнения стека)даже контент поступает правильно, потому чтоmb_detect_encoding() == UTF-8пытался установитьsetLocale(LC_CTYPE, "UTF-8"), который, кажется, не работает, потому что требует выбора одного языка, который я не могу указать, потому что я должен поддерживать несколько. И все равно не получится, если я вызову его вручную для целей тестирования, то есть с помощью;setLocale(LC_CTYPE,"zh__CN.utf8") - ctype_alpha() все равно не удастся для китайского текста

Кажется, что даже явный выбор языка не делаетctype_alpha() полезно.

Отсюда вопрос:как проверить алфавитные символы на всех языках?

Единственная идея, которая у меня возникла на данный момент, - это проверять вручную массивы «допустимых» символов, но это кажется некрасивым, особенно для китайцев.

Как бы вы решили эту проблему?

Ответы на вопрос(4)

Ваш ответ на вопрос