Menu
Coddy logo textTech

2次元配列の作成

CoddyのPHPジャーニー「論理とフロー」セクションの一部 — レッスン 27/68。

多次元配列とは、単に他の配列を要素として持つ配列のことです。最も一般的な形式は2次元配列で、これはスプレッドシートやゲーム盤のように、行と列を持つグリッドとして考えることができます。

PHPで2次元配列を作成するのは簡単です。各要素がそれ自体配列である配列を構築します:

<?php
$gameBoard = [
    ["", "", ""],
    ["", "", ""],
    ["", "", ""]
];
?>

これにより、各内部配列が行を表し、それらの配列内の各要素が列を表す3x3のグリッドが作成されます。また、異なるデータ型を持つ2次元配列を作成することもできます:

<?php
$scores = [
    [85, 92, 78],
    [90, 88, 95],
    [76, 84, 89]
];
?>

PHPには、特定の値で埋められた配列を素早く作成できるarray_fill()という組み込み関数も用意されています。この関数は、開始インデックス、要素数、および埋める値の3つの引数を取ります:

<?php
// array_fill(開始インデックス, 要素数, 値)
$row = array_fill(0, 3, 0); // [0, 0, 0]
?>

array_fill() をそれ自体と組み合わせることで、効率的に2次元配列を構築できます。例えば、すべてのセルが 0 で始まる3x3のグリッドを作成するには、次のようにします:

<?php
$grid = array_fill(0, 3, array_fill(0, 3, 0));
// 結果: すべての要素が 0 である 3x3 の配列
?>

多次元配列は、ゲームボードや情報の表、あるいはデータをグリッド形式で表現する必要があるあらゆる場面において、構造化されたデータを整理するのに非常に便利です。これらは、関連する情報の行と列を扱うための自然な方法を提供します。

challenge icon

チャレンジ

簡単

2次元配列の次元と初期値を表す3つの入力(行数、列数、および各位置を埋める値)を受け取ります。これらの入力を読み取り、各要素に指定された値が設定された、指定された次元の2次元配列を作成し、print_r()を使用してその配列を出力してください。

入力形式:

  • 1行目:行数(整数)
  • 2行目:列数(整数)
  • 3行目:各要素の初期値(文字列)

期待される出力: print_r()を使用して表示された、作成された2次元配列

自分で試してみよう

<?php
// 入力を読み込む
$rows = intval(fgets(STDIN));
$columns = intval(fgets(STDIN));
$value = trim(fgets(STDIN));

// TODO: 2次元配列を作成するために、以下にコードを記述してください


// 結果を出力する
print_r($array);
?>
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

論理とフローのすべてのレッスン