echo '<img src="' . Func::smallAvatarImg($ank['sex']) . '"> ' . who($ank['id']) . ' </a>';
if ($online > 0)
echo span('quality_2') . ' Новое сообщение ' . SPAN_CLOSE;
$msg = ($message['text']) . A_CLOSE;
echo NEXT_LINE . '<div class="btnn"><a href="/message/sent/' . $ank['id'] . '/">' . Func::span('grey') .$msg . A_CLOSE;
echo '</div>';
echo div('razriv1 marg_s_5') . DIV_CLOSE;
echo '<img src="' . Func::smallAvatarImg($ank['sex']) . '"> ' . who($ank['id']) . ' </a>';
if ($online > 0)
echo span('quality_2') . ' Новое сообщение ' . SPAN_CLOSE;
$msg = mb_substr($message['text'], 0, 64, 'utf8').'..' . A_CLOSE;
echo NEXT_LINE . '<div class="btnn"><a href="/message/sent/' . $ank['id'] . '/">' . Func::span('grey') .$msg . A_CLOSE;
echo '</div>';
echo div('razriv1 marg_s_5') . DIV_CLOSE;
echo '<img src="' . Func::smallAvatarImg($ank['sex']) . '"> ' . who($ank['id']) . ' </a>';
if ($online > 0)
echo span('quality_2') . ' Новое сообщение ' . SPAN_CLOSE;
$msg = mb_substr($message['text'], 0, 64, 'utf8').'..' . A_CLOSE;
echo NEXT_LINE . '<div class="btnn"><a href="/message/sent/' . $ank['id'] . '/">' . Func::span('grey') .$msg . A_CLOSE;
echo '</div>';
echo div('razriv1 marg_s_5') . DIV_CLOSE;
PHP функция для превью
Функция удалят HTML разметку и урезает текст до определенного количества символов указанного в $limit, но оставляет последнее слово целым. Если в конце текста попадаются ., !, ? – они остаются как есть, в других случаях добавляется многоточие.
function preview_text($value, $limit = 300)
{
$value = stripslashes($value);
$value = htmlspecialchars_decode($value, ENT_QUOTES);
$value = str_ireplace(array('<br>', '<br />', '<br/>'), ' ', $value);
$value = strip_tags($value);
$value = trim($value);
if (mb_strlen($value) < $limit) {
return $value;
} else {
$value = mb_substr($value, 0, $limit);
$length = mb_strripos($value, ' ');
$end = mb_substr($value, $length - 1, 1);
if (empty($length)) {
return $value;
} elseif (in_array($end, array('.', '!', '?'))) {
return mb_substr($value, 0, $length);
} elseif (in_array($end, array(',', ':', ';', '«', '»', '…', '(', ')', '—', '–', '-'))) {
return trim(mb_substr($value, 0, $length - 1)) . '...';
} else {
return trim(mb_substr($value, 0, $length)) . '...';
}
return trim();
}
}
$text = '
Текст превью (или прехедер) — это небольшой кусочек текста!
Который «подтягивается» из тела сообщения, и обычно он отображается
под полями с именем отправителя и темой сообщения.
';
echo preview_text($text, 60);
echo preview_text($text, 80);
PHP
Результат
Текст превью (или прехедер) — это небольшой кусочек текста!
Текст превью (или прехедер) — это небольшой кусочек текста! Который...