カテゴリ: PHP 更新日: 2025/12/13

PHPのexplodeとimplodeの使い方を完全解説!初心者でもわかる文字列と配列の変換方法

PHP の explode(), implode() を使った文字列と配列の変換
PHP の explode(), implode() を使った文字列と配列の変換

先生と生徒の会話形式で理解しよう

生徒

「PHPで文字列をバラバラに分けたり、逆にくっつけたりってできますか?」

先生

「できますよ!explode関数で文字列を分割して配列に、implode関数で配列を文字列に戻すことができます。」

生徒

「それってどんなときに使うんですか?難しそう…」

先生

「メールアドレスの一覧や、カンマ区切りのデータを扱いたいときにとても便利です。やさしく解説するので一緒に見ていきましょう!」

-

1. explode関数とは?文字列を分割して配列にする方法

1. explode関数とは?文字列を分割して配列にする方法
1. explode関数とは?文字列を分割して配列にする方法

explode(エクスプロード)関数は、文字列を区切り文字で分割して配列にするPHPの関数です。
例えば「りんご,みかん,バナナ」という文字列を,(カンマ)で区切って、果物の一覧にできます。


$text = "りんご,みかん,バナナ";
$array = explode(",", $text);
print_r($array);

実行結果:


Array
(
    [0] => りんご
    [1] => みかん
    [2] => バナナ
)

このように、文字列を区切って配列に変換できます。フォームで入力されたカンマ区切りの値などを扱うときに便利です。

2. implode関数とは?配列を文字列にくっつける方法

2. implode関数とは?配列を文字列にくっつける方法
2. implode関数とは?配列を文字列にくっつける方法

次に、配列をimplode(インプロード)関数を使って文字列に変換する方法を見てみましょう。
例えば、複数の単語を1つの文章にしたいときに使えます。


$array = ["りんご", "みかん", "バナナ"];
$text = implode("、", $array);
echo $text;

実行結果:


りんご、みかん、バナナ

このように、配列の要素を「、」や「-」など好きな文字でつなげて1つの文字列にできます。

3. explodeとimplodeはセットで使うと便利

3. explodeとimplodeはセットで使うと便利
3. explodeとimplodeはセットで使うと便利

explodeimplodeは、セットで使うことが多いPHPの文字列処理関数です。
たとえば、データを一時的に保存するときは文字列にして、あとで配列に戻すという使い方ができます。


$text = "PHP,JavaScript,Python";
$langArray = explode(",", $text);

$newText = implode(" / ", $langArray);
echo $newText;

実行結果:


PHP / JavaScript / Python

このように、文字列→配列→文字列と自由に変換できます。

4. 区切り文字は自由に設定できる

4. 区切り文字は自由に設定できる
4. 区切り文字は自由に設定できる

explodeimplodeでは、区切り文字(セパレーター)を自由に設定できます。
よく使われるのは以下のような文字です。

  • ,(カンマ)
  • |(パイプ)
  • スペース
  • /(スラッシュ)

例えば、半角スペースで区切る場合:


$text = "HTML CSS JavaScript";
$words = explode(" ", $text);
print_r($words);
-

5. implodeはjoinと同じ意味

5. implodeはjoinと同じ意味
5. implodeはjoinと同じ意味

implodeは、joinという別名でも使えます。どちらを使っても結果は同じです。


$fruits = ["いちご", "もも", "ぶどう"];
echo join("・", $fruits);

出力:


いちご・もも・ぶどう

joinは英語で「つなげる」という意味があり、配列の要素を1つにまとめるという点ではimplodeとまったく同じ働きをします。

6. フォームの入力データにも使える

6. フォームの入力データにも使える
6. フォームの入力データにも使える

たとえばチェックボックスなどで複数選択された項目をimplodeで1つの文字列にまとめて保存することができます。

逆に、保存された文字列をexplodeで配列に戻せば、編集画面で選択状態を再現できます。


// フォームから受け取った配列
$hobbies = ["映画", "音楽", "読書"];

// カンマでつなげて保存
$saveText = implode(",", $hobbies);

// 保存した文字列を取り出して配列に戻す
$restoreArray = explode(",", $saveText);

このように、explodeとimplodeは、PHPで文字列と配列を自由に行き来するための大切な関数です。

まとめ

まとめ
まとめ

PHPにおける文字列操作は、初心者がつまずきやすいポイントのひとつですが、explodeimplodeという二つの関数を理解することで、文字列と配列の変換がとても簡単に行えるようになります。この記事では、文字列を配列に分割するexplode関数と、配列を文字列に結合するimplode関数の基本的な使い方を中心に、さまざまな例と一緒に解説してきました。

explode関数は、区切り文字を指定することで文字列を配列に分割することができます。たとえばカンマやスペース、スラッシュなどを使って、テキストデータを細かく扱いたいときにとても役立ちます。一方でimplode関数は、その逆で、配列を一つの文字列にまとめるために使われます。たとえばフォームから送信された複数の値を保存したり、表示用のテキストに変換したりと、活用シーンが非常に多い関数です。

特に、explodeとimplodeは組み合わせて使うことが多く、一時的にデータを保存したり再表示したりする場面では欠かせません。保存時にimplodeで1つの文字列にして、再利用時にexplodeで配列に戻すことで、ユーザーの操作をスムーズに扱うことができます。

PHPで文字列と配列を変換するサンプル

たとえば、フォーム入力で複数の値を保存して再利用するには、以下のように書けます。


$selectedTags = ["PHP", "JavaScript", "CSS"];
$storedValue = implode("|", $selectedTags); // データベースに保存
echo $storedValue; // PHP|JavaScript|CSS

$restoredArray = explode("|", $storedValue); // 配列に戻す
print_r($restoredArray);

このように、文字列と配列を変換できると、PHPでのデータ操作がより柔軟に行えます。区切り文字を工夫することで、可読性や用途に応じた出力が可能です。

implodeとjoinの違い

implodejoinは機能的には同じで、どちらを使っても配列の結合が可能です。ただし、一般的にはimplodeの方が多く使われており、初心者のうちはimplodeで覚えるのがおすすめです。

区切り文字を自由に設定するコツ

explodeimplodeでは、区切り文字を自由に設定できますが、保存や表示時の見やすさも考慮して、「,(カンマ)」「・(中点)」「|(パイプ)」などを用途に応じて選ぶとよいでしょう。特に複数の単語やタグ、キーワードを扱うときには、使いやすい区切り記号を決めておくと後々管理しやすくなります。

初心者におすすめの練習

  • カンマ区切りの文字列をexplodeで配列にしてみる
  • 配列をimplodeで「・」や「|」で連結して表示してみる
  • explode→implodeの往復変換で同じデータが保てるか試す
  • フォームから送信されたチェックボックスの配列を文字列に変換して保存してみる

explodeとimplodeを正しく使いこなすことで、PHPでの文字列操作や配列の扱いが大きく広がります。とくにユーザー入力やCSVデータなどを扱う場面では頻出のテクニックです。実際に手を動かして、いろいろな区切り文字やデータパターンで試してみることが、理解を深める近道になります。

先生と生徒の振り返り会話

生徒

「explodeとimplodeって、最初は名前が難しそうだけど、やってみるとけっこう簡単ですね!」

先生

「そうですね。文字列と配列の変換が自由にできると、データの加工や保存、表示にすごく便利になりますよ。」

生徒

「カンマとかスペースとか、区切り文字も好きに選べるのが助かります。」

先生

「フォーム入力の処理やCSVの読み込みでも大活躍しますから、実際の開発でもどんどん使っていきましょう。」

生徒

「はい、implodeとexplodeでいろいろ練習してみます!」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

PHPのexplode関数とは何をするための関数ですか?

explode関数は、文字列を特定の区切り文字で分割して配列に変換するためのPHPの組み込み関数です。カンマやスペースなどを使って、1つの文字列を複数の要素に分解するのに便利です。
コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
New1
PHP
PHPのCookieセキュリティを完全ガイド!初心者でもわかるSecureとHttpOnlyの使い方
New2
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
New3
PHP
PHPのSQLインジェクション対策を完全解説!初心者でも安全にデータベースを扱う方法
New4
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
Java&Spring記事人気No2
PHP
初心者向けPHPでMySQLからデータを取得する方法(SELECT文)完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのリストの重複を削除する方法を解説!初心者向けにsetとdict.fromkeysの使い方をやさしく説明
No.4
Java&Spring記事人気No4
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.5
Java&Spring記事人気No5
PHP
PHPのXSS対策を完全ガイド!初心者でもわかる安全なWebアプリの作り方
No.6
Java&Spring記事人気No6
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.7
Java&Spring記事人気No7
PHP
PHPのOAuth認証をやさしく解説!Google・Facebookログインを初心者向けに実装しよう
No.8
Java&Spring記事人気No8
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
-
-