|
|
10.10.2008, 11:26
|
|
Гость
Гость
|
Здравствуйте!
Подскажите как можно использовать данную функцию в шаблоне (Объект в списке) для поля в шаблоне $f_Msg
//Фуннкция делает обрезание строки.
//Оставляет $length любых "word/словарных" символов
function my_substr($str,$length=350){
if(strlen($str)>$length){
$str = substr($str,0,$length);
$str = substr($str,0,strrpos($str," "));
$str .= "...";
}
return $str;
}
Спасибо.
|
|
|
10.10.2008, 14:16
|
|
VlastV
qb.digital
Зарегистрирован: 2005-11-02
Сообщений: 202
|
Определить данную функцию в /netcat/modules/default/function.inc.php
А с списке объектов использовать " . my_substr($f_Field) . "
Разработка сайтов на CMS NetCat. Портфолио http://vlastv.ru/ E-mail: me [at] vlastv [dot] ru ; ICQ: 66117050
|
|
|
10.10.2008, 22:57
|
|
ktotoff
АльтерЛан
Зарегистрирован: 2006-12-19
Сообщений: 339
|
Или так, в самом шаблоне:
Код:";
$text = strip_tags($f_TextField);
$text = substr(htmlspecialchars(trim($text)), 0, 200);
$text = substr($text, 0, strrpos(text, " "));
$result .= "
Но лучше, конечно, как выше написано. Притом, функцию можно оптимизировать, сделать её более универсальной, например:
".my_substr($f_fieldName, $outputLength)."
...жизнь прекрасна, когда правильно подобраны антидепрессанты...
|
|
|
22.10.2008, 17:00
|
|
DiGGy
DiGGy

Зарегистрирован: 2005-04-04
Сообщений: 1546
|
Очень часто встает задачка обрезания текста по первым N словам. В данном случае текст лучше обрезать mysql функцией SUBSTRING_INDEX. Например:
Код:
select SUBSTRING_INDEX(Field1,' ',10) from MessageXX
выдаст первые 10 слов из значения поля Field1. И никаких доп. функций создавать не надо.
Temet nosce...
|