PHP: 文字列を分割する explode()
文字列を分割 explode()
PHPで文字列を分割する場合は、 explode()関数を使います。
explode()関数は指定された文字で分割した結果を配列として返します。
書式
explode(区切り文字, 文字列 [, 最大要素数])
戻り値は分割された配列です。
カンマ「,」で分割する
まずは文字列$strをカンマ「,」で分割します。
$str = "a,b,c"; $arr = explode(",", $str); print_r($arr);
実行結果
Array ( [0] => a [1] => b [2] => c )
タブ、改行、空白(スペース)で分割する
- タブで分割する場合は「"\t"」
- 改行で分割する場合は「"\n"」
- 空白(スペース)で分割する場合は「" "」
$arr = explode("\t", $str); // タブで分割 $arr = explode("\n", $str); // 改行で分割 $arr = explode(" ", $str); // 空白で分割
返す配列の最大要素数を指定
「返す配列の最大要素数」を指定してみます。
結果は、最後の配列に分割できなかった部分がまとめて入っています。
$str = "a,b,c,d,e"; $arr = explode(",", $str, 3); print_r($arr);
実行結果
Array ( [0] => a [1] => b [2] => c,d,e )
空文字「""」で区切るとエラーになる
区切り文字に空文字「""」を指定すると、 エラーが発生します。
$str = "abc";
$arr = explode("", $str);
print_r($arr);
実行結果
PHP Warning: explode(): Empty delimiter Warning: explode(): Empty delimiter