文字列を区切り文字で分割して配列に変換したい、または、その逆で配列を1つの文字列に変換したい場合は、それぞれexplode、implode関数を使用します。
explode関数の使い方
1 |
explode('区切り文字', '文字列' [, 分割回数] ); |
'文字列' で指定した文字を '区切り文字' の単位で区切ります。区切られた結果は配列にして戻り値として返します。
分割回数は指定した単位で分割しますが、省略時は、区切り文字で全てを分割します。
explodeの使用例
以下は、半角ハイフン'-'で区切られた電話番号を配列にする例です。
コード
1 2 3 4 5 6 |
//配列arrayに$telephoneの分割結果を格納します。 $telphone = "090-1111-2222"; $array = explode("-", $telphone ,3 ); //$arrayの中身を出力 var_dump($array); |
実行結果
1 2 3 4 5 6 7 8 |
array(3) { [0]=> string(3) "090" [1]=> string(4) "1111" [2]=> string(4) "2222" } |
implode関数の使い方
1 |
implode('区切り文字',$配列変数 ); |
’$配列変数’ に格納されている文字列を '区切り文字' で繋げて1つの文字列にします。
implodeの使用例
個別に入力した都道府県、市町村、丁目、ビル名を配列で保持していた住所を1行で表示する際に、配列を連結して確認画面などで表示します。
コード
1 2 3 |
$address = array('東京都','新宿区','新宿','1-1-1','XXXビル'); //配列を区切り文字無しでつなげる print ( implode("", $address )); |
実行結果
1 |
東京都新宿区新宿1-1-1XXXビル |
また、この区切り文字は implode($address) のように省略することができ、省略した場合の区切り文字は空("")とみなされます。