PHPで文字列と配列を相互に変換する:explode, implode

文字列を区切り文字で分割して配列に変換したい、または、その逆で配列を1つの文字列に変換したい場合は、それぞれexplode、implode関数を使用します。

explode関数の使い方

explode('区切り文字', '文字列' [, 分割回数] );
'文字列' で指定した文字を '区切り文字' の単位で区切ります。区切られた結果は配列にして戻り値として返します。 分割回数は指定した単位で分割しますが、省略時は、区切り文字で全てを分割します。

explodeの使用例

以下は、半角ハイフン'-'で区切られた電話番号を配列にする例です。 コード
//配列arrayに$telephoneの分割結果を格納します。
$telphone = "090-1111-2222";
$array = explode("-", $telphone ,3 );

//$arrayの中身を出力
var_dump($array);
実行結果
array(3) {
  [0]=>
  string(3) "090"
  [1]=>
  string(4) "1111"
  [2]=>
  string(4) "2222"
}

implode関数の使い方

implode('区切り文字',$配列変数 );
’$配列変数’ に格納されている文字列を '区切り文字' で繋げて1つの文字列にします。

implodeの使用例

個別に入力した都道府県、市町村、丁目、ビル名を配列で保持していた住所を1行で表示する際に、配列を連結して確認画面などで表示します。 コード
$address = array('東京都','新宿区','新宿','1-1-1','XXXビル');
//配列を区切り文字無しでつなげる
print ( implode("", $address ));
実行結果
東京都新宿区新宿1-1-1XXXビル
また、この区切り文字は implode($address) のように省略することができ、省略した場合の区切り文字は空("")とみなされます。