explode()

1. 定义

该函数使用一个字符串分割另一个字符串,返回被分割后子字符串组成的数组。

2. 语法

explode ( string $delimiter , string $string [, int $limit ] ) : array

3. 参数说明

参数 可选性 数据类型 描述
$delimiter 必需 字符串 字符串分割边界符,不允许为空字符串
$string 必需 字符串 被分割的字符串
$limit 可选 字符串 返回数组元素的数目

其中$limit的值有三种情况:

  • 正数:返回$limit个元素,最后一个元素为分割掉前$limit个元素的剩余string部分
  • 负数:返回除了最后的-$limit个元素之外的所有元素
  • 0:被当做1

4. 示例

<?php

// explode()
// 使用一个字符串分割另一个字符串,返回被分割后子字符串组成的数组

$delimiter = ',';
$string = 'hello, phper, world';
$res = explode($delimiter, $string);
var_dump($res);
/* 输出:
array(3) {
  [0]=>
  string(5) "hello"
  [1]=>
  string(6) " phper"
  [2]=>
  string(6) " world"
}
*/

$res = explode($delimiter, $string, -1);
var_dump($res);
/* 输出:
array(2) {
  [0]=>
  string(5) "hello"
  [1]=>
  string(6) " phper"
}
*/

$res = explode($delimiter, $string, 2);
var_dump($res);
/* 输出:
array(2) {
  [0]=>
  string(5) "hello"
  [1]=>
  string(13) " phper, world"
}
*/

5. 延展阅读

  • str_split():将字符串分割成定长的子字符串,然后将其存入数组
  • str_word_count():计算字符串中的单词数量
  • strtok():将指定字符串以分界符分割成若干个子字符串,每次只返回一个子字符串
  • implode():将一个一维数组的值转化为字符串,返回转化后的结果