將中文字符串分割為數(shù)組 解決str_split中文亂碼php 也可用于判斷字符

轉(zhuǎn)載:https://blog.csdn.net/bai9474500755/article/details/51059520

首先來(lái)介紹str_split()這個(gè)函數(shù);
它的作用是將字符串分割為數(shù)組;
例如:

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

看似很好用的樣子;但是作為中國(guó)程序員;不可避免的要和中文打交道;
這時(shí)候再用str_splite就會(huì)悲劇的發(fā)現(xiàn)亂碼了;;;
不要怕;preg_splite可以拯救這個(gè)問(wèn)題;
當(dāng)然是需要配合正則使用的;

/** 
 * 將字符串分割為數(shù)組     
 * @param  string $str 字符串 
 * @return array       分割得到的數(shù)組 
 */  
function mb_str_split($str){  
    return preg_split('/(?<!^)(?!$)/u', $str );  
}  
  
$str='白俊遙博客';  
mb_str_split($str);  
  
打印結(jié)果如下:  
Array  
(  
    [0] => 白  
    [1] => 俊  
    [2] => 遙  
    [3] => 博  
    [4] => 客  
)  

自己測(cè)試:

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

輸出結(jié)果:

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 '愛(ài)' (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 '愛(ài)' (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)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容