(PHP) странности работы mb_substr и mb_strcut

pamir
Дата: 24.07.2006 15:23:55
PHP 4.4.2
Имеется строка1 в юникоде с русскими символами и строка2 в юникоде, но вся на латинице.
Вызывают сабжевые функции, чтобы обрезать их до 20 символов.
mb_substr($my_str, 0 ,20)
Получаю на первой строке результат - строка из около 10 символов, причем, последний символ иногда совершенно неожиданный - очевидно, порезана двухбайтовая последовательность из-за того, что в строке присутствуют пробелы (однобайтовые).
На второй строке все хорошо - 20 символов.
Получается, что функции режут не по сивольно, а побайтно...
Почему у меня так выходит? Судя по описанию, функции должны работать с символами...