PHP 手册
后退 |  | 前进

# explode

(PHP 3, PHP 4, PHP 5)

explode -- 使用一个字符串分割另一个字符串

## 描述

array explode ( string separator, string string [, int limit] )

此函数返回由字符串组成的数组，每个元素都是 string 的一个子串，它们被字符串 separator 作为边界点分割出来。如果设置了 limit 参数，则返回的数组包含最多 limit 个元素，而最后那个元素将包含 string 的剩余部分。

如果 separator 为空字符串（""），explode() 将返回 `FALSE`。如果 separator 所包含的值在 string 中找不到，那么 explode() 将返回包含 string 单个元素的数组。

如果 limit 参数是负数，则返回除了最后的 limit 个元素外的所有元素。此特性是 PHP 5.1.0 中新增的。

由于历史原因，虽然 implode() 可以接收两种参数顺序，但是 explode() 不行。你必须保证 separator 参数在 string 参数之前才行。

> 注: 参数 limit 是在 PHP 4.0.1 中加入的。

例子 1. explode() 示例

`<?php // 示例 1 $pizza = "piece1 piece2 piece3 piece4 piece5 piece6"; $pieces = explode(" ", $pizza); echo $pieces[0]; // piece1 echo $pieces[1]; // piece2 // 示例 2 $data = "foo:*:1023:1000::/home/foo:/bin/sh"; list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data); echo $user; // foo echo $pass; // * ?>`

例子 2. limit 参数示例

`<?php $str = 'one|two|three|four'; // 正数的 limit print_r(explode('|', $str, 2)); // 负数的 limit print_r(explode('|', $str, -1)); ?>`

以上示例将输出：

    Array
    (
        [0] => one
        [1] => two|three|four
    )
    Array
    (
        [0] => one
        [1] => two
        [2] => three
    )

> 注: 本函数可安全用于二进制对象。

参见 preg_split()、spliti()、split() 与 implode()。

后退 | 起点 | 前进
echo | 上一级 | fprintf