МЕЛИК
Новичок
Дата регистрации:
28.11.2011 13:03:05
Сообщений: 2
У меня был готовый скрипт сайта, там создана пользовательская функция для обрезания строковой переменной по заданной длине. Все бы хорошо, но функция иногда последний символ выдает как ромбик с вопросом вот так ( Приглашая Вас в проект я научу вас построению у� ...), а иногда просто обрывает слово. кодировка и в файле с функцией, и в выводящем - одна и та же UTF-8, хотя перекодировку я выполнял сам, изначально все было в CP-1251.не подскажите, где может быть "засада" :-)
function obrez ($a, $kol)
{
if ($kol==0)
$b=str_replace("<br>", " ", $a);
else
{
if (strlen($a)>$kol)
$b=substr(str_replace("<br>", " ", $a), 0, $kol)." ...";
else
$b=str_replace("<br>", " ", $a);
}
// Убить пустые строки и переводы строки
$wow = nl2br(trim($b));
$wow = str_replace("<br />", "", $wow);
$wow = trim(preg_replace('/[\r\n]+/m','',$wow));
return $wow;
}
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Покажите вызов этой функции.
МЕЛИК
Новичок
Дата регистрации:
28.11.2011 13:03:05
Сообщений: 2
echo '<div><a href="#" onmouseover="toolTip(\'<div align=center style=margin:10px;><b>Нет фото</b></div>\', 200, 100)" onmouseout="toolTip()"><img src="Img1/no-foto.gif" align="left" width="50" height="50" border="0" hspace="10"></a>';
}
echo ' <span class="zaglav"><a href="idv.php?id='.$rr_posl['id'].'" >'.$rr_posl['zag'].'</a></span></div>';
}
if ($rru['posled_opis']==2)
{
echo '<div class="tst46">'.obrez($rr_posl['opis'], 225).'</div>';
}
}
echo '</div>';
} else {
echo '<div style="margin:5px 0px 10px 20px;">';
if (isset ($rr_posl['id']))
{
if ($rr_posl['id_firm']>0){
echo ' <span class="zaglav"><a href="idv_firm.php?id='.$rr_posl['id'].'" >'.$rr_posl['zag'].'</a></span>';
} else {
echo ' <span class="zaglav"><a href="idv.php?id='.$rr_posl['id'].'" >'.$rr_posl['zag'].'</a></span>';
}
if ($rru['posled_opis']==2)
{
echo '<div class="tst46">'.obrez($rr_posl['opis'], 225).'</div>';
}
}
echo '</div>';
Я отметил, где встречается функция, но там вроде бы ничего подозрительного нет, весь скрипт почти без комментариев, поэтому трудно понять смысл каждой переменной
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
http://myrusakov.ru/php-finderror.html - прочитайте и на каждом шаге смотрите строку, найдите момент, где она портится.