php中支持多种编码的中文字符串截取函数!_php教程-查字典教程网
php中支持多种编码的中文字符串截取函数!
php中支持多种编码的中文字符串截取函数!
发布时间:2016-12-29 来源:查字典编辑
摘要:支持多种编码的中文字符串截取函数!复制代码代码如下:/**@todo中文截取,支持gb2312,gbk,utf-8,big5**@param...

支持多种编码的中文字符串截取函数!

复制代码 代码如下:

/*

*@todo中文截取,支持gb2312,gbk,utf-8,big5

*

*@paramstring$str要截取的字串

*@paramint$start截取起始位置

*@paramint$length截取长度

*@paramstring$charsetutf-8|gb2312|gbk|big5编码

*@param$suffix是否加尾缀

*/

functioncsubstr($str,$start=0,$length,$charset="utf-8",$suffix=true)

{

if(function_exists("mb_substr"))

returnmb_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;

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类