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
$row = array_fill(0, 3, "");
// 結果: ["", "", ""]
?>これは、ゲームボードの空のセルなど、繰り返しの値で配列を初期化する必要がある場合に便利なショートカットです。
多次元配列は、ゲームボードや情報の表、あるいはデータをグリッド形式で表現する必要があるあらゆる場面において、構造化されたデータを整理するのに非常に便利です。これらは、関連する情報の行と列を扱うための自然な方法を提供します。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
チャレンジ
簡単2次元配列の次元と初期値を表す3つの入力(行数、列数、および各位置を埋める値)を受け取ります。これらの入力を読み込み、指定された次元で各要素に指定された値が設定された2次元配列を作成し、print_r()を使用してその配列を出力してください。
入力形式:
- 1行目: 行数(整数)
- 2行目: 列数(整数)
- 3行目: 各要素の初期値(文字列)
期待される出力: print_r()を使用して表示された、作成済みの2次元配列
チートシート
多次元配列とは、他の配列を要素として持つ配列のことです。最も一般的な形式は2次元配列で、行と列を持つグリッドを表します。
PHPで2次元配列を作成する:
<?php
$gameBoard = [
["", "", ""],
["", "", ""],
["", "", ""]
];
?>異なるデータ型を持つ2次元配列:
<?php
$scores = [
[85, 92, 78],
[90, 88, 95],
[76, 84, 89]
];
?>各内部配列は行を表し、それらの配列内の各要素は列を表します。多次元配列は、ゲームボード、テーブル、またはグリッド形式のデータなどの構造化されたデータを整理するのに役立ちます。
指定された値であらかじめ埋められた配列を作成するには、array_fill()を使用します:
array_fill(start_index, count, value)
<?php
// [0, 0, 0, 0, 0] を作成します
$row = array_fill(0, 5, 0);
?>これは、行や2次元配列全体をデフォルト値で素早く初期化するのに便利です。
自分で試してみよう
<?php
// 入力を読み込む
$rows = intval(fgets(STDIN));
$columns = intval(fgets(STDIN));
$value = trim(fgets(STDIN));
// TODO: 以下に2次元配列を作成するコードを記述してください
// 結果を出力する
print_r($array);
?>このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。