PHPのimplodeで配列を結合し文字列にする方法
PHPで、配列を任意の単語で結合し、文字列として取得できるimplode関数の使い方をまとめました。
implode関数の使い方
配列と、結合したい文字列を設定する
implodeは、第一引数に結合したい文字列を、第二引数に配列を設定します。
implode('結合する文字列', 配列)
サンプルコード
$aryHoge = ['apple', 'banana', 'grape', 'cherry', 'strawberry'];
//配列を「@」で結合
$fruits = implode('@', $aryHoge);
echo $fruits;
apple@banana@grape@cherry@strawberry
implode関数は、配列をカンマ区切りの文字列に変換してcsv出力するなど、汎用的に使用できる関数となっています。
配列のみでも設定が可能
implodeは一応配列のみでも指定が可能です。
その場合は空の文字列がデフォルト値として設定されます。
サンプルコード
$aryHoge = ['apple', 'banana', 'grape', 'cherry', 'strawberry']; //配列のみで設定 ただ文字列として繋がるだけ $fruits = implode($aryHoge); echo $fruits;
applebananagrapecherrystrawberry
改行やタブ等の特殊文字も結合可能(ただし注意点あり)
改行(\n)やタブ(\t)も、implodeで結合が出来ます。
ただ、改行やタブなどの特殊文字は、PHPの仕様で第一引数を""(ダブルクオーテーション)で囲わないと判定されません。
''(シングルクオーテーション)の場合はただの\nという文字列になってしまうので、特殊文字の仕様を把握しておきましょう。
改行できる(ダブルクオート)
サンプルコード
$aryHoge = [];
$aryHoge[] = 'こんにちは';
$aryHoge[] = 'ありがとう';
$aryHoge[] = 'さようなら';
echo implode("\n", $aryHoge);こんにちは
ありがとう
さようなら
ありがとう
さようなら
※ソースコードの結果
改行できない(シングルクオート)
サンプルコード
$aryHoge = [];
$aryHoge[] = 'こんにちは';
$aryHoge[] = 'ありがとう';
$aryHoge[] = 'さようなら';
echo implode('\n', $aryHoge);こんにちは\nありがとう\nさようなら
※ソースコードの結果
逆の処理(文字列を配列化)のexolode
implode関数の真逆の処理に、文字列を指定の単語で区切って配列に変換するexplodeという関数があります。
併用して使うことも多いので併せて覚えておいてください。
サンプルコード
$fruits = 'apple、banana、grape、cherry、strawberry';
//全角の「、」毎に配列に区切る
$aryHoge = explode('、', $fruits);
print_r($aryHoge);
Array
(
[0] => apple
[1] => banana
[2] => grape
[3] => cherry
[4] => strawberry
)
(
[0] => apple
[1] => banana
[2] => grape
[3] => cherry
[4] => strawberry
)
implode関数とexplode関数は利用機会の多い関数などで、使い方を知っておくと何かと便利です。
以上、PHPのimplodeで配列を結合し文字列にする方法、でした。

ディスカッション
コメント一覧
まだ、コメントがありません