php explodeで文字列を指定した区切り文字で分割する

  • 作成日 2021.10.04
  • php
php explodeで文字列を指定した区切り文字で分割する

phpで、explodeを使用して、文字列を指定した区切り文字で分割するサンプルコードを記述してます。phpのバージョンは8.0です。

環境

  • OS  CentOS Linux release 8.0.1905 (Core)
  • php 8.0.0
  • nginx 1.14.1

explode使い方

explodeを使用すれば、文字列を指定した区切り文字で分割することが可能です。

$result = explode("区切り文字", 文字列, [取得する最大要素数]);
// resultは配列となります。取得する最大要素数は非必須

以下は、文字列を指定した区切り文字「,」で分割するサンプルコードとなります。

<?php

$str = "mebee,mebee,mebee,mebee,mebee";

$result = explode(",", $str);

print_r($result);

$str = "2020/12/31";

$result = explode("/", $str);

print_r($result);

実行結果

Array
(
    [0] => mebee
    [1] => mebee
    [2] => mebee
    [3] => mebee
    [4] => mebee
)

Array
(
    [0] => 2020
    [1] => 12
    [2] => 31
)

第三引数に、最大数を指定すると以下の結果となります。

<?php

$str = "mebee,mebee,mebee,mebee,mebee";

$result = explode(",", $str, 2);

print_r($result);

実行結果

Array
(
    [0] => mebee
    [1] => mebee,mebee,mebee,mebee
)

また、preg_splitを使用しても同じことが可能です。

<?php

$str = "mebee,mebee,mebee,mebee,mebee";

$result = preg_split("/[,]/", $str);

print_r($result);

実行結果

Array
(
    [0] => mebee
    [1] => mebee
    [2] => mebee
    [3] => mebee
    [4] => mebee
)

パフォーマンスは「explode」の方がいいです。

【参考】 同じコードを1000万回実行した結果

測定結果 : preg_split
process time: 9.50714 ミリ秒

測定結果 : explode
process time: 4.37079 ミリ秒