PHP str_split 带中文字符串

 

比如把这个句子拆分成单个字符:

$str = "开水d房abc";

用str_split就不行,要用正则

<?php
/**
* @version $Id: str_split.php 
* @package utf8
* @subpackage strings
*/
function utf8_str_split($str, $split_len = 1)
{
    if (!preg_match('/^[0-9]+$/', $split_len) || $split_len < 1)
        return FALSE;
 
    $len = mb_strlen($str, 'UTF-8');
    if ($len <= $split_len)
        return array($str);
 
    preg_match_all('/.{'.$split_len.'}|[^\x00]{1,'.$split_len.'}$/us', $str, $ar);
 
    return $ar[0];
}
?>

更简单的一句:

 preg_split('/(?<!^)(?!$)/u', $str );

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章