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 );

猜你喜欢

转载自blog.csdn.net/wuzuyu365/article/details/106947871