PHP截取UTF-8编码的中英文字符串就会出现乱码,这确定是很麻烦的事,校验页面是否符合xhtml 1.0格式的时候也会报错。

字符串里如有包含英文的单字节,用substr($strChar,$len)处理会出错?的乱码,终于用正则表达式的函数得以解决(发在自己的blog和大家分享)。

 function utf8_substr($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);
 }

热点搜索: