php utf8编码的字符串截取方法
内容摘要
这篇文章主要为大家详细介绍了php utf8编码的字符串截取方法,具有一定的参考价值,可以用来参考一下。
经测试代码如下:
/**
* 截取编码为utf8的字符串
*
* @param string
经测试代码如下:
/**
* 截取编码为utf8的字符串
*
* @param string
文章正文
这篇文章主要为大家详细介绍了php utf8编码的字符串截取方法,具有一定的参考价值,可以用来参考一下。
经测试代码如下:
/**
* 截取编码为utf8的字符串
*
* @param string $strings 预处理字符串
* @param int $start 开始处 eg:0
* @param int $length 截取长度
* @author php教程 www.idcnote.com
*/
function subString($strings, $start, $length) {
if (function_exists('mb_substr') && function_exists('mb_strlen')) {
$sub_str = mb_substr($strings, $start, $length, 'utf8');
return mb_strlen($sub_str, 'utf8') < mb_strlen($strings, 'utf8') ? $sub_str . '...' : $sub_str;
}
$str = substr($strings, $start, $length);
$char = 0;
for ($i = 0; $i < strlen($str); $i++) {
if (ord($str[$i]) >= 128)
$char++;
}
$str2 = substr($strings, $start, $length + 1);
$str3 = substr($strings, $start, $length + 2);
if ($char % 3 == 1) {
if ($length <= strlen($strings)) {
$str3 = $str3 .= '...';
}
return $str3;
}
if ($char % 3 == 2) {
if ($length <= strlen($strings)) {
$str2 = $str2 .= '...';
}
return $str2;
}
if ($char % 3 == 0) {
if ($length <= strlen($strings)) {
$str = $str .= '...';
}
return $str;
}
}
/*** 来自php教程(www.idcnote.com) ***/
注:关于php utf8编码的字符串截取方法的内容就先介绍到这里,更多相关文章的可以留意
代码注释