Для подсчета длины строки на "неанглийском" языке на практике (например) приходится использовать функцию из пакет mb_string (для работы с многобайтными строками).
то есть вместо:
strlen($text)
нужно писать:
mb_strlen($text)
Часто оказывается, что русские буквы (символы) занимают по 2 байта каждая, но это может быть и иначе -- всё зависит от кодировки текста.