Chinese string interception function that supports various encodings! todo Chinese interception, supports gb2312, gbk, utf-8, big5
*
* @param string $str The string to be intercepted * @param int $start The interception starting position * @ param int $length interception length * @param string $charset utf-8|gb2312|gbk|big5 encoding * @param $suffix whether to add a suffix
*/
function csubstr ($str, $start=0, $length, $charset="utf-8", $suffix=true)
{
if(function_exists("mb_substr"))
return mb_substr($str , $start, $length, $charset);
$re['utf-8'] = "/[x01-x7f]|[xc2-xdf][x80-xbf]|[xe0-xef][x80 -xbf]{2}|[xf0-xff][x80-xbf]{3}/";
$re['gb2312'] = "/[x01-x7f]|[xb0-xf7][xa0- xfe]/";
$re['gbk'] = "/[x01-x7f]|[x81-xfe][x40-xfe]/";
$re['big5'] = "/ [x01-x7f]|[x81-xfe]([x40-x7e]|xa1-xfe])/";
preg_match_all($re[$charset], $str, $match);
$slice = join("",array_slice($match[0], $start, $length));
if($suffix) return $slice."…";
return $slice;
}
http://www.bkjia.com/PHPjc/318282.html
www.bkjia.com
true
http: //www.bkjia.com/PHPjc/318282.html
TechArticle
Chinese string interception function that supports multiple encodings! Copy the code as follows: /* *@todo Chinese interception, Support gb2312, gbk, utf-8, big5 * *@paramstring$str The string to be intercepted *@paramint$sta...
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn