天天看點

php字元串截取函數,支援中文截取

/**

* 基于PHP的 mb_substr,iconv_substr 這兩個擴充來截取字元串,中文字元都是按1個字元長度計算;

* 該函數僅适用于utf-8編碼的中文字元串。

*

* @param $str 原始字元串

* @param $length 截取的字元數

* @param $append 替換截掉部分的結尾字元串

* @return 傳回截取後的字元串

*/

function sub_str($str, $length = 0, $append = '...') {

$str = trim($str);

$strlength = strlen($str);

if ($length == 0 || $length >= $strlength) {

return $str;

} elseif ($length < 0) {

$length = $strlength + $length;

if ($length < 0) {

$length = $strlength;

}

if ( function_exists('mb_substr') ) {

$newstr = mb_substr($str, 0, $length, 'utf-8');

} elseif ( function_exists('iconv_substr') ) {

$newstr = iconv_substr($str, 0, $length, 'utf-8');

} else {

//$newstr = trim_right(substr($str, 0, $length));

$newstr = substr($str, 0, $length);

if ($append && $str != $newstr) {

$newstr .= $append;

return $newstr;

本文轉自TBHacker部落格園部落格,原文連結:本文轉自TBHacker部落格園部落格,原文連結:xxxxx,如需轉載請自行聯系原作者,如需轉載請自行聯系原作者