這篇文章主要介紹php把字符串分解成字符的方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、市中ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的市中網(wǎng)站制作公司
第一種:
$arr = str_split($str); p($arr);
結(jié)果:
總結(jié):
這里直接使用str_split 方法來(lái)分割, 但不幸的是這個(gè)方法不支持中文的解析, 這里可以考慮下mb_split的分割, 而這里為什么[小樣]二字會(huì)被分割成六個(gè)亂碼呢? 這里應(yīng)該是utf8作怪, utf8中一個(gè)漢字占3個(gè)字節(jié), GBK和GB2312中的一個(gè)漢字占2個(gè)字節(jié)。
第二種:
$arr = preg_split("http://u", $str, -1, PREG_SPLIT_NO_EMPTY); P($arr);
結(jié)果:
總結(jié):
這里使用了正則來(lái)分割字符
preg_split(pattern, subject, limit, flags)
pattern:用于搜索的模式,字符串形式;
subject: 輸入的字符串;
limit: 限制多少個(gè)字符, -1|0|null表示不限制
flags: PREG_SPLIT_NO_EMPTY(返回分隔后的非空部分[常用]) PREG_SPLIT_DELIM_CAPTURE(用于分隔的模式中的括號(hào)表達(dá)式將被捕獲并返回) PREG_SPLIT_OFFSET_CAPTURE(對(duì)于每一個(gè)出現(xiàn)的匹配返回時(shí)將會(huì)附加字符串偏移量)。
第三種:
$len = mb_strlen($str, 'utf8'); $tmp = []; for ($i = 0;$i < $len;$i++) { $tmp[] = $str[$i]; } p($tmp);
結(jié)果:
結(jié)果:
用循環(huán)來(lái)切割字符串, 首先獲取該字符串的長(zhǎng)度, 然后for循環(huán), 這里最后的未知字符是因?yàn)?len = 7,所以循環(huán)7次, 不同于第一種方法的utf8字符錯(cuò)亂問(wèn)題。
以上是php把字符串分解成字符的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!