您的位置:首页 > 运维架构

【ecshop二次开发】ecshop截取中文字符串的方法

2017-09-15 00:06 267 查看
ecshop的时候要把用户订单的姓名显示在网页中但是又不想全部显示出来,这时会用到截取中文字符的情况,由于中文的截取经常出现乱码所以总结了下在utf和gbk下的中午截取方法。

首先是utf-8下:

<?php

//截取utf8字符串

function utf8Substr($str, $from, $len)

{

return preg_replace(‘#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,’.$from.’}’.

‘((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,’.$len.’}).*#s’,

‘$1′,$str);

}

?>

gbk下:

<?php

//截取中文字符串

function mysubstr($str, $start, $len) {

$tmpstr = “”;

$strlen = $start + $len;

for($i = 0; $i < $strlen; $i++) {

if(ord(substr($str, $i, 1)) > 0xa0) {

$tmpstr .= substr($str, $i, 2);

$i++;

} else

$tmpstr .= substr($str, $i, 1);

}

return $tmpstr;

}

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  二次开发ECShop