工作生活

php拆分中文字符串

2019-07-03  本文已影响0人  诗无尽头i

拆分字符串函数,只支持 gb2312编码
代码来源于网络,时间很久了,请作者私信我,将注明版权

<?php
function arr_split_zh($tempaddtext) {
    $tempaddtext = iconv("UTF-8", "GBK//IGNORE", $tempaddtext);
    $cind = 0;
    $arr_cont = array();
    for ($i = 0; $i < strlen($tempaddtext); $i++) {
        if (strlen(substr($tempaddtext, $cind, 1)) > 0) {
            if (ord(substr($tempaddtext, $cind, 1)) < 0xA1) { //如果为英文则取1个字节
                array_push($arr_cont, substr($tempaddtext, $cind, 1));
                $cind++;
            } else {
                array_push($arr_cont, substr($tempaddtext, $cind, 2));
                $cind+= 2;
            }
        }
    }
    foreach ($arr_cont as & $row) {
        $row = iconv("gb2312", "UTF-8", $row);
    }
    var_dump($arr_cont);
}
arr_split_zh('诗无尽头 - 唯有自由才能触摸虚无的自我。');

输出结果

Array ( 
[0] => 诗
[1] => 无
[2] => 尽
[3] => 头
[4] => 
[5] => - 
[6] => 
[7] => 唯
[8] => 有
[9] => 自
[10] => 由
[11] => 才
[12] => 能
[13] => 触
[14] => 摸
[15] => 虚
[16] => 无
[17] => 的
[18] => 自
[19] => 我
[20] => 。
)
上一篇下一篇

猜你喜欢

热点阅读