採点されません。匿名です。 間違えることは学習の一部です。読むだけでもかまいません。

配列を文字列に連結

テクノロジ系 / array-basic (添字配列・配列関数・explode/implode)

配列を文字列に連結

Lesson 4 / Chapter 7

ch06 の逆向き操作

explode:  "a,b,c"  →  ["a", "b", "c"]
implode:  ["a", "b", "c"]  →  "a,b,c"
  • explode分割 (文字列 → 配列)
  • implode結合 (配列 → 文字列)
  • セットで覚える

implode($glue, $arr) の基本

<?php
$nums = [10, 20, 30];
$s = implode(",", $nums);

echo $s . "\n";   // 10,20,30
  • 第 1 引数: 区切り文字 (glue)
  • 第 2 引数: 配列
  • 配列の要素を区切り文字でつないだ文字列が返る

区切り文字は自由に選べる

<?php
$path = ["home", "user", "docs"];

echo implode("/", $path) . "\n";   // home/user/docs
echo implode(" - ", $path) . "\n"; // home - user - docs
echo implode("\n", $path) . "\n";  // home\nuser\ndocs (改行区切り)
  • 1 文字でも複数文字でも OK
  • 改行文字 "\n" を使えば 1 行ずつ出力するのにも使える

ループとの組み合わせ

<?php
$squares = [];
for ($i = 1; $i <= 5; $i++) {
    $squares[] = $i * $i;
}

echo implode(",", $squares) . "\n";   // 1,4,9,16,25
  • ループで配列を組み立てる → implode で 1 行にまとめる
  • これは 競技プログラミングや CSV 出力で頻出 のパターン

このチャプターでできるようになること

implode(",", $arr) でカンマ区切りに変換できる

✅ 任意の区切り文字を選べる

explode の逆操作だと説明できる

✅ ループで作った配列をまとめて 1 行に出せる

→ ドリルへ

考えてみよう

既定では正解・不正解の判定はしません。自分のペースで「答えを見る」を。採点してほしい場合だけ「採点してほしい」を押してください。

ドリル 01 — カンマで連結

問題

配列 [1, 2, 3, 4, 5], で連結して 1 行出力してください。

期待される出力:

1,2,3,4,5

採点

php scripts/grade.php topics/array-basic/ch07-array-to-string/drill/01-join-comma/

ヒント

  • $nums = [1, 2, 3, 4, 5];
  • echo implode(",", $nums) . "\n";