如何在cakephp中截取中文字符串?

原本以为要自己写helper去截取中文字符串,没想到cakephp的Text helper类中已经提供了truncate方法。下面是truncate方法的原型。 

引用
truncate 
    truncate(string $text, int $length=100, array $options) 
    Cuts a string to the $length and adds a suffix with ‘ending’ if the text is longer than $length. If ‘exact’ is passed as false, the truncation will occur after the next word ending. If ‘html’ is passed as true, html tags will be respected and will not be cut off.



Text->truncate方法有3个参数: 
 

  • $text:需要截取的字符串
  • $length:需要截取的长度,默认是截取100个字符
  • $options:数组参数。ending表示在截取后的字符串结尾加上ending字符串;exact如果是false的话则不会截断word;html如果是true的话则不会截断html tag


下面的代码演示了如何使用tuncate方法: 

Php代码  [url=]

​​​

[/url]

  • echo $this->Text->truncate(
  •     'The killer crept forward and tripped on the rug.',
  •     22,
  •     array(
  •         'ending' => '...',
  •         'exact' => false
  •     )
  • );


echo $this->Text->truncate(    'The killer crept forward and tripped on the rug.',    22,    array(        'ending' => '...',        'exact' => false    ));

上面的代码将输出The killer crept… 
注意:如果是截取中文字符串的话exact最好置为true,否则汉语字符将无法被截断

发布了551 篇原创文章 · 获赞 1 · 访问量 9030

猜你喜欢

转载自blog.csdn.net/xiaoyaGrace/article/details/104174836