如何在codeigniter上仅显示模型中的前100个字符

时间:2013-04-16 05:11:41

标签: php mysql codeigniter

这是我的模型

function get_news(){
        $this->db->select('*');
        $this->db->from('articles');
        $this->db->where('status' , 0);
        $this->db->limit(6);
        $this->db->order_by('created', 'desc');
        return $this->db->get()->result();  
    }

我的表 arcticles

id----title----body----status---created

现在在 body 列上我想要显示100个字符,我应该在视图,控制器或此模型上编辑...

提前问候。

3 个答案:

答案 0 :(得分:1)

使用substr

$content = substr($str, 0, 100);

答案 1 :(得分:1)

使用substr

function get_news() {
    $this->db->select('*');
    $this->db->from('articles');
    $this->db->where('status' , 0);
    $this->db->limit(6);
    $this->db->order_by('created', 'desc');
    return substr($this->db->get()->result(), 0, 100); 
}

答案 2 :(得分:0)

当我需要在特定字符处剪切字符串而不删除最后一个字时,我总是使用function。如果需要,此功能将通过减少字符来处理

function strSelect( $myString, $maxLength ) {
$out = "";
$s = explode( " ",$myString );
for( $i = 0, $cs = count( $s ); $i < $cs; $i++ ) {
    $out .= $s[$i]." ";
    if( isSet( $s[$i+1] ) && ( strlen( $out ) + strlen( $s[$i+1] ) ) > $maxLength ) {
        break;
    }
}
return rtrim( $out );

}

然后你可以像

一样打电话
return strSelect(($this->db->get()->result()), 100);  

或者您可以使用substr (documentation here)函数

简单地剪切给定数字
substr(($this->db->get()->result()), 0, 100);