PHP⽂本处理之中⽂汉字字符串转换为数组
在PHP中我们可以通过str_split 将字符串转换为数组,但是却对中⽂⽆效,下⾯记录⼀下个⼈将中⽂字符串转换为数组的⽅法。
⽤到的PHP函数
mb_strlen — 获取字符串的长度
mb_substr — 获取字符串的部分。
string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding()]] )
根据字符数执⾏⼀个多字节安全的 substr() 操作。位置是从 str 的开始位置进⾏计数。第⼀个字符的位置是 0。第⼆个字符的位置是 1,以此类推。
参数
strphp 数组字符串转数组
  从该 string 中提取⼦字符串。
start
  str 中要使⽤的第⼀个字符的位置。
length
  str 中要使⽤的最⼤字符数。 If omitted or NULL is passed, extract all characters to the end of the string.
encoding
  encoding 参数为字符编码。如果省略,则使⽤内部字符编码。
代码:
function ch2arr($str)
{
$length = mb_strlen($str, 'utf-8');
$array = [];
for ($i=0; $i<$length; $i++)
$array[] = mb_substr($str, $i, 1, 'utf-8');
return $array;
}
测试:
$ch = '⽥边的稀泥⾥到处是泥鳅!';
$arr = ch2arr($ch);
var_dump($arr);
测试结果:
array (size=12)
0 => string '⽥' (length=3)
1 => string '边' (length=3)
2 => string '的' (length=3)
3 => string '稀' (length=3)
4 => string '泥' (length=3)
5 => string '⾥' (length=3)
6 => string '到' (length=3)
7 => string '处' (length=3)
8 => string '是' (length=3)
9 => string '泥' (length=3)
10 => string '鳅' (length=3)
11 => string '!' (length=1)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。