[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Функция обрезки текста
bposter
Помогите доработать функцию, функция обрезает текст до определенного количества символов, проблема в том что иногда разрез происходит между тегами

<b>......</b>


и тогда портится верстка, можно как то исправить? если например тег <b > не закрыт то в конце добавлять закрывающий тег </b>

Вот сама функция
 
function cutstring( $stranb, $lengthanb, $theend="." )
{
if (strlen($stranb)>30) {$text2=substr($stranb, 0, $lengthanb);
$words=explode(" ", $text2);
$words=array_reverse($words);
array_splice($words,0,1);
$alexxnb=0;
for ($i=0; $i< count($words); $i++) {
$i=$i-$alexxnb;
if (substr($words[$i], -1)=="," OR substr($words[$i], -1)=="." OR substr($words[$i], -1)==":" OR substr($words[$i], -1)==";") {$words[$i]=substr($words[$i],0, strlen($words[$i])-1);};
$wrd=$words[$i];
if (strlen($wrd)<4){
array_splice($words,$i,1);$alexxnb=1;
} else {
$i=1985;};
};
$mwords="";
$words=array_reverse($words);
for ($i=0; $i< count($words); $i++) {
$mwords=$mwords.$words[$i];
if ($i!=count($words)-1) {$mwords=$mwords." ";} else {$mwords=$mwords.$theend;};
};
} else {$mwords=$stranb;};
return $mwords;
}

function cutstrin( $stranb, $lengthanb, $theend="...." )
{
if (strlen($stranb)>30) {$text2=substr($stranb, 0, $lengthanb);
$words=explode(" ", $text2);
$words=array_reverse($words);
array_splice($words,0,1);
$alexxnb=0;
for ($i=0; $i< count($words); $i++) {
$i=$i-$alexxnb;
if (substr($words[$i], -1)=="," OR substr($words[$i], -1)=="." OR substr($words[$i], -1)==":" OR substr($words[$i], -1)==";") {$words[$i]=substr($words[$i],0, strlen($words[$i])-1);};
$wrd=$words[$i];
if (strlen($wrd)<4){
array_splice($words,$i,1);$alexxnb=1;
} else {
$i=1985;};
};
$mwords="";
$words=array_reverse($words);
for ($i=0; $i< count($words); $i++) {
$mwords=$mwords.$words[$i];
if ($i!=count($words)-1) {$mwords=$mwords." ";} else {$mwords=$mwords.$theend;};
};
} else {$mwords=$stranb;};
return $mwords;
}


_____________
Вязание xe4.ru спицами.
Сайт для тестов (подопытный №543)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.