如何在Codeigniter中只显示模型的前100个字符

iyzzxitl  于 2022-12-16  发布在  其他
关注(0)|答案(3)|浏览(126)

这是我的模特

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();  
    }

我的table艺术品

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

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

bejyjqdl

bejyjqdl1#

使用子字符串

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

7z5jn7bk2#

使用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); 
}
kzipqqlq

kzipqqlq3#

当我需要在某个字符处剪切字符串而不剪切最后一个单词时,我总是使用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);

相关问题