|
|
|
| При применении функции substr к строкам в кодировке UTF последний символ иногда выводится знаком вопроса. Как можно это побороть?
Пытался так:
$pp=mb_convert_encoding($thisarticle[title], "UTF-8", "windows-1251");
if (trim(strlen($pp))>70)
{
$pp=trim(substr($pp,0,70))."...";
}
|
Но тогда все выводится кракозябами.
Если вернуть строке обратно кодировку UTF-8
$pp=mb_convert_encoding($thisarticle[title], "UTF-8", "windows-1251");
if (trim(strlen($pp))>70)
{
$pp=trim(substr($pp,0,70))."...";
}
$pp=mb_convert_encoding($thisarticle[title], "windows-1251", "UTF-8");
|
Все выводится знаками вопроса. | |
|
|
|
|
|
|
|
для: sponge
(07.10.2007 в 17:06)
| | как-то похоже на это должно работать
<?php
mb_internal_encoding("UTF-8");
$pp = mb_substr($pp, 0, 70, "UTF-8");
|
незнаю как насчёт mb_strlen($pp, "UTF-8") получится | |
|
|
|
|
|
|
|
для: EXP
(07.10.2007 в 18:00)
| | Большое спасибо, действительно работает. | |
|
|
|
|
|
|
|
для: sponge
(07.10.2007 в 18:15)
| | А Вы уверены, что Вам нужно именно из UTF-8 в Win1251? | |
|
|
|