split
split
(PHP 4, PHP 5)
split - 通过正则表达式将字符串拆分为数组
警告
这个函数在PHP 5.3.0中是DEPRECATED
,而在PHP 7.0.0中是REMOVED
。
这个功能的替代方案包括:
- preg_split()
- explode()
- str_split()
描述
array split ( string $pattern , string $string [, int $limit = -1 ] )
通过正则表达式将字符串拆分为数组。
参数
pattern
大小写正则表达式。
如果你想分割任何被正则表达式认为是特殊的字符,你需要首先转义它们。如果你认为split()
(或者其他任何正则表达式函数)做了一些奇怪的事情,请阅读包含在PHP发行版的正则表达式/子目录中的regex.7文件。它采用manpage格式,因此您需要按照man /usr/local/src/regex/regex.7
这一行来完成某些操作,以便读取它。
string
输入字符串。
limit
如果设置了limit,返回的数组将包含最大限制元素,最后一个元素包含整个字符串的其余部分。
返回值
返回一个字符串数组,每个字符串都是一个字符串的子字符串,通过将其分割为由区分大小写的正则表达式模式形成的边界来形成。
如果有n个模式出现,返回的数组将包含n + 1个项目。 例如,如果没有发生模式,只返回一个元素的数组。 当然,如果字符串为空,这也是如此。 如果发生错误,split()返回FALSE。
例子
示例#1 split()示例
要从/ etc / passwd的一行中分离出前四个字段,请执行以下操作:
<?php
list($user, $pass, $uid, $gid, $extra) =
split(":", $passwd_line, 5
?>
示例#2 split()示例
解析可能用斜线,点或连字符分隔的日期:
<?php
// Delimiters may be slash, dot, or hyphen
$date = "04/30/1973";
list($month, $day, $year) = split('[/.-]', $date
echo "Month: $month; Day: $day; Year: $year<br />\n";
?>
注意
提示
从PHP 5.3.0开始,split()
已弃用。preg_split()
是该函数的建议替代方法。如果你不需要正则表达式的能力,那么使用explode()会更快,这不会导致正则表达式引擎的开销。
提示
对于想要模仿Perl的@chars = split('',$ str)
行为的用户,请参阅preg_split()或str_split()的示例。
扩展内容
- preg_split() - 用正则表达式分割字符串
- spliti() - 通过不区分大小写的正则表达式将字符串拆分为数组
- str_split() - 将字符串转换为数组
- explode() - 按字符串拆分字符串
- implode() - 使用字符串加入数组元素
- chunk_split() - 将字符串拆分为更小的块
- wordwrap() - 将字符串包装为给定数量的字符
← eregi
spliti →