美文网首页
将中文字符串分割为数组 解决str_split中文乱码php 也

将中文字符串分割为数组 解决str_split中文乱码php 也

作者: geeooooz | 来源:发表于2020-04-21 11:25 被阅读0次

    转载:https://blog.csdn.net/bai9474500755/article/details/51059520

    首先来介绍str_split()这个函数;
    它的作用是将字符串分割为数组;
    例如:

    $str='abcde';  
    str_plite($str);  
      
    打印结果如下:  
    Array  
    (  
        [0] => a  
        [1] => b  
        [2] => c  
        [3] => d  
        [4] => e  
    )  
    

    看似很好用的样子;但是作为中国程序员;不可避免的要和中文打交道;
    这时候再用str_splite就会悲剧的发现乱码了;;;
    不要怕;preg_splite可以拯救这个问题;
    当然是需要配合正则使用的;

    /** 
     * 将字符串分割为数组     
     * @param  string $str 字符串 
     * @return array       分割得到的数组 
     */  
    function mb_str_split($str){  
        return preg_split('/(?<!^)(?!$)/u', $str );  
    }  
      
    $str='白俊遥博客';  
    mb_str_split($str);  
      
    打印结果如下:  
    Array  
    (  
        [0] => 白  
        [1] => 俊  
        [2] => 遥  
        [3] => 博  
        [4] => 客  
    )  
    

    自己测试:

    $keyword = 'A5646as爱喝酒武A5646as爱喝酒武1,,.。';
    $aa = preg_split('/(?<!^)(?!$)/u',$keyword);
    dump($aa);die;
    

    输出结果:

    array (size=27)
      0 => string 'A' (length=1)
      1 => string '5' (length=1)
      2 => string '6' (length=1)
      3 => string '4' (length=1)
      4 => string '6' (length=1)
      5 => string 'a' (length=1)
      6 => string 's' (length=1)
      7 => string '爱' (length=3)
      8 => string '喝' (length=3)
      9 => string '酒' (length=3)
      10 => string '武' (length=3)
      11 => string 'A' (length=1)
      12 => string '5' (length=1)
      13 => string '6' (length=1)
      14 => string '4' (length=1)
      15 => string '6' (length=1)
      16 => string 'a' (length=1)
      17 => string 's' (length=1)
      18 => string '爱' (length=3)
      19 => string '喝' (length=3)
      20 => string '酒' (length=3)
      21 => string '武' (length=3)
      22 => string '1' (length=1)
      23 => string ',' (length=3)
      24 => string ',' (length=1)
      25 => string '.' (length=1)
      26 => string '。' (length=3)
    

    相关文章

      网友评论

          本文标题:将中文字符串分割为数组 解决str_split中文乱码php 也

          本文链接:https://www.haomeiwen.com/subject/xcfuihtx.html