>  기사  >  백엔드 개발  >  smarty 列表插件显示标题长度和连接解决思路

smarty 列表插件显示标题长度和连接解决思路

WBOY
WBOY원래의
2016-06-13 10:05:02901검색

smarty 列表插件显示标题长度和连接
现在在写一个站, 要在smarty 插件那里写一个列表插件,要截取标题长度。

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php function smarty_function_list($params, &$smarty)    {        extract($params);        $cate = !empty($cate) ? trim($cate) : '';//表名        $items = !empty($items) ? trim($items) : '*';//字段        $length=!empty($length) ? trim ($length) :'10';//长度        $where = !empty($where) ? trim($where) : '';//条件        $order = !empty($order) ? trim($order) : '';//排序        $page = !empty($page) ? intval($page) : 0;//分页        $pagesize = !empty($pagesize) ? intval($pagesize) : 20;        $varname = !empty($varname) ? trim($varname) : '';        global $db;        global $table;        $sql="select $items from ".$table[$cate];        if(!empty($where))        {            $sql.=" where $where ";        }        if(!empty($order))        {          $sql.=" order by $order";        }        $page=max($page,1);        if($pagesize<1)        {            $pagesize=10;        }        $rs=$db->PageExecute($sql,$pagesize,$page);        $rs=$rs->getRows();        $smarty->assign($length,$length);        $smarty->assign($varname, $rs);        unset($rs);    }?>

上面是插件代码;
HTML code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->{--list cate="articles" items="Title" length=4 varname="rs"--}{--foreach from=$rs item=r--}{--$r.Title--}<br>{--/foreach--}

上面是模板代码。
现在就是要截取标题长度,和标题连接
$r.Titletruncatecn:$length:"...":true
这种的是不行的!各位师兄,师姐谢谢了!

------解决方案--------------------
探讨

$length是哪里来的?

如果是变了的话,试下这个呢
$r.Title|truncate:`$length`:"...":true
要不就指定一个具体数字
$r.Title|truncate:30:"...":true
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.