这是今天工作中遇到的一点问题,截取中文字符串截取到的数字不对
三个函数
mb_strpos();//查找位置
mb_substr();//截取字符串
mb_strlen();//字符串长度
需要注意的地方是 mb_substr()函数的结束位置是 end - start的值
查找后找到解决方案如下:
//开始截取字符串
if( mb_strpos($row['标题'],"微课大赛优秀作品",0,"utf-8") === 0){
$str_start = mb_strlen("微课大赛优秀作品","utf-8");
}else{
$str_start = 0;
}
echo $str_start;
$str_end = mb_strpos($row['标题'],"发布时间",0,"utf-8");
$str = mb_substr($row['标题'] , $str_start , $str_end - $str_start , 'utf-8');
$str = mb_ereg_replace('^( | )+', '', $str);
echo $str."<br>";