array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'zh', ), 'this' => array ( 0 => 'function.str-split.php', 1 => 'str_split', ), 'up' => array ( 0 => 'ref.strings.php', 1 => '字符串 函数', ), 'prev' => array ( 0 => 'function.str-shuffle.php', 1 => 'str_shuffle', ), 'next' => array ( 0 => 'function.str-starts-with.php', 1 => 'str_starts_with', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'zh', 'path' => 'reference/strings/functions/str-split.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
str_split — 将字符串转换为数组
string
输入字符串。
length
每一段的长度。
如果指定了可选的 length
参数,返回数组中的每个元素长度均为 length
的块,除了最后一个块,如果字符串不是均匀划分,则可能会更短。默认 length
是
1
,这意味着每个块的大小是一个字节。
如果 length
小于 1
,将会抛出 ValueError。
版本 | 说明 |
---|---|
8.2.0 |
如果 string 为空,现在返回空 array。之前返回的 array 包含单个空字符串。
|
8.0.0 |
如果 length 小于 1 ,现在会抛出
ValueError;之前会触发 E_WARNING
级别的错误且函数会返回 false 。
|
示例 #1 str_split() 使用示例
<?php
$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>
以上示例会输出:
Array ( [0] => H [1] => e [2] => l [3] => l [4] => o [5] => [6] => F [7] => r [8] => i [9] => e [10] => n [11] => d ) Array ( [0] => Hel [1] => lo [2] => Fri [3] => end )
注意:
在处理多字节字符时,str_split() 会按字节数转换,而非字符数。使用 mb_str_split() 将字符串拆分为码点。