PHP マニュアル
前のページ |  | 次のページ

# explode

(PHP 3, PHP 4, PHP 5)

explode -- 文字列を文字列により分割する

## 説明

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

文字列の配列を返します。この配列の各要素は、 `string` を文字列 `delimiter` で区切った部分文字列となります。 `limit` が指定された場合、返される配列には 最大 `limit` の要素が含まれ、その最後の要素には `string` の残りの部分が全て含まれます。

空の文字列 ("") が `delimiter` として使用された場合、 explode() は `FALSE` を返します。`delimiter` に引数 `string` に含まれていない値が含まれている場合、 explode() は、引数 `string` を返します。

もし `limit` パラメータが負の場合、 最後の -`limit` 個の要素を除く全ての構成要素が返されます。 この特徴は PHP 5.1.0 で追加されました。

歴史的理由により、implode() はいずれのパラメータ順も受け入れることができますが、 explode() はそうできません。 `string` 引数の前に必ず `delimiter` 引数がくるように確認する必要があります。

> 注意: パラメータ `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 (PHP 5.1 以降) print_r(explode('|', $str, -1)); ?>`

上の例の出力は以下となります。

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

> 注意: この関数はバイナリデータに対応しています。

preg_split(), str_split(), strtok(), implode(). も参照ください。

前のページ | ホーム | 次のページ
echo | 上に戻る | fprintf