php>=7.4
新增mb_str_split
使用方法和str_split一样,中文下不再是乱码。
那么低于php7.4版本的怎么办呢。用以下代码:
if(!function_exists('mb_str_split'))
{
function mb_str_split($str,$split_length = 1,$charset = "UTF-8")
{
//支持中文打散字符串,str_split()不支持中文
if(func_num_args() == 1){
return preg_split('/(?<!^)(?!$)/u', $str);
}
if($split_length < 1)return false;
$len = mb_strlen($str, $charset);
$arr = array();
for($i = 0;$i < $len;$i += $split_length){
$s = mb_substr($str, $i, $split_length, $charset);
$arr[] = $s;
}
return $arr;
}
}