您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP截取中英文

2025/12/31 15:52:42发布19次查看
代码如下:
/** * @param $string * @param $from 从0开始…… * @param null $length * @return string * c_substr(给我一点, $from=0, 9)>>给我一 * c_substr(给我一点, $from=1, 9)>>我一 * c_substr(给我一点, $from=2, 9)>>我一 * c_substr(给我一点, $from=3, 9)>>我一点 */privatefunctionc_substr($string, $from=0, $length = null){//必填字段校验if(!isset($string)||!isset($from)||$from0){ return''; } //获得字符串长度$strlen = strlen($string); //如果没有设置长度则把长度设置为字符串if($length == null){ $length = $strlen; } //判断字符串长度是否小于等于$length,是则直接返回字符串if($from == 0&&$length >= $strlen){ return$string; } $sublen = $length + $from; $rtnstr = ; //开始截取字符串//为了能够截取完整,需要从头开始遍历for($i=0;$i$sublen&&$i$strlen;$i++){ //判断是否为中文 如果是则在不超长的情况下往后再截2个字节if(ord($string[$i])>0xa0){ if($i+2$sublen&&$i+2$strlen){ $rtnstr .= $string[$i].$string[$i+1].$string[$i+2]; /** * 如 “给我一点” * 从位置0截取9个字节,则只获取“给我一” * 从位置1截取9个字节,则只获取“我一” * 从位置2截取9个字节,则只获取“我一” * 从位置3截取9个字节,则只获取“我一点” * 下面的if是为了跳过开头不完整的字符 */if($i$from){ $rtnstr = ; } $i += 2; } else{ return$rtnstr; } } //英文else{ $rtnstr .= $string[$i]; } } return$rtnstr; }
版权声明:转载的时候提到我就行……
以上就介绍了php截取中英文,包括了方面的内容,希望对php教程有兴趣的朋友有所帮助。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product