入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

php逐个汉字遍历字符串

创建时间:2016-07-26 投稿人: 浏览次数:2597
function str_split_unicode($str, $l = 0) {
    if ($l > 0) {
    $ret = array();
        $len = mb_strlen($str, "UTF-8");
        for ($i = 0; $i < $len; $i += $l) {
            $ret[] = mb_substr($str, $i, $l, "UTF-8");
        }
        return $ret;
    }
    return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);
}
$s = "中华人民abc共和x01国";



print_r(str_split_unicode($s));

echo "<hr/>";
$cind = 0;
$arr_cont = array();
for ($i = 0; $i < strlen($s); $i++) {
    if (strlen(substr($s, $cind, 1)) > 0) {
        if (ord(substr($s, $cind, 1)) < 192) { //如果为英文则取1个字节
            if (substr($s, $cind, 1) != " ") {
                array_push($arr_cont, substr($s, $cind, 1));
            }
            $cind++;
        } elseif(ord(substr($s, $cind, 1)) < 224) {
            array_push($arr_cont, substr($s, $cind, 2));
            $cind+=2;
        } else {
            array_push($arr_cont, substr($s, $cind, 3));
            $cind+=3;
        }
    }
}

print_r($arr_cont);
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。