PDA

Просмотр полной версии : Длина строки кириллических символов


deeplay
08.04.2009, 02:58
ситуация: Для теста передаю (post) через форму ОДИН кириллический символ (ну или другой юникод, типа ə ü и т.д.), вычисляю длину строки при помощи strlen() мне выводится 2! как я понял на самом деле "я" далеко не просто "я", а какой-нить двузначный код (да-да, тупое словосочетание).

вопрос: Есть ли функция, которая "заставит" принимать "я", как один символ? Если нет таковой в ядре php, подскажите пути обхода.

вопрос 2 (дополнительный): Как увидеть что из себя на самом деле представляют эти символы? Типа D0 D1 и т.д.? Возможно я ошибаюсь, что они так выглядят, мне просто интересно увидеть, желательно, таблицу соответствия и т.д.

p.s.: везде (на всех страницах, базе и т.д.) юзается utf-8.

Добавлено через 26 минут
нашел решение в сети. хотел удалить тему, подумал может кому пригодиться

решение:

function utf8_strlen($str)
{
if (function_exists('mb_strlen')) return mb_strlen($str, 'utf-8');
return strlen(utf8_decode($str));
}