PHP截取字符串长度

比方说我现在有一个变量A,A是字符串,有200个汉字,我想只输出前100个汉字,请问如何实现。... 比方说我现在有一个变量A,A是字符串,有200个汉字,我想只输出前100个汉字,请问如何实现。 展开
 我来答
百度网友e3f6c04
2014-11-24 · TA获得超过2147个赞
知道大有可为答主
回答量:3576
采纳率:20%
帮助的人:1237万
展开全部
php截取中文字符串无乱码函数:

function ZHsubstr($str, $start=0, $length, $charset="utf-8"){
$len = strlen($str); //原字节数
if($len > $length)
$suffixStr = "…";
else
$suffixStr = "";

if(function_exists("mb_substr"))
return mb_substr($str, $start, $length, $charset).$suffixStr;
elseif(function_exists('iconv_substr')) {
return iconv_substr($str,$start,$length,$charset).$suffixStr;
}
$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));
return $slice.$suffixStr;
}

使用方法:

$str = "$page_title";
$page_title=ZHsubstr($str, 0, 40, 'utf-8');
势芷蓝3S
2014-11-24 · TA获得超过2389个赞
知道小有建树答主
回答量:1122
采纳率:0%
帮助的人:377万
展开全部
$str = '任意长度字符串';
echo mb_substr($str,0,100,'字符集');
追问
echo mb_substr($str,0,100,'字符集');

中的 字符集是什么意思?
追答
“UTF-8”或“GBK”,看你文件的编码格式。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式