| |
|
|
| | substr и strlen не работает с кодировкой utf? т.е к меня текст соостоящий из кирилицы но в кодировке utf, и функция strlen возврщяет количество байтов а не символов. как определить количество символов? а фугкция substr тоже выделяет подстроку по байтам а не по символам. как это исправить? Заранее благодарю. | |
| |
|
|
| |
|
|
| |
для: jeans1986
(26.10.2007 в 15:07)
| | | Наверное нужно установить локаль. | |
| |
|
|
| |
|
|
| |
для: jeans1986
(26.10.2007 в 15:07)
| | | Используйте mb_strlen() и mb_substr() | |
| |
|
|
| |
|
|
| |
для: kasmanaft
(26.10.2007 в 15:11)
| | | она работает также( можно какую то альтернативу найти? | |
| |
|
|
| |
|
|
| |
для: jeans1986
(27.10.2007 в 08:39)
| | | >она работает также( можно какую то альтернативу найти?
Вобщет mb_strlen(), должна правильно работать,
$str="ruehооророррлолорлорлотьь.джророть";
echo 'В строке str '.mb_strlen($str,'UTF-8').' символов';
//еще можно попробовать с помощью iconv
echo '<br>В строке str '.iconv_strlen($str,'UTF-8').' символов';
|
| |
| |
|
|
| |
|
|
| |
для: jeans1986
(27.10.2007 в 08:39)
| | | > она работает также( можно какую то альтернативу найти?
Если выводится "Fatal error: call to undefined function ...", то у Вас просто не подключена библиотека "Multibyte String Functions".
Есть еще iconv lib: iconv_strlen(), iconv_substr(), но, опять же, она может отсутствовать (хотя это уже становится редкостью).
В противном случае придется писать ф-и самому. | |
| |
|
|