PHPでネストした2つのループを使って2次元配列を行列形式で表示する方法
PHPで2次元配列を行列(マトリックス)形式で表示するには、行(row)用と列(col)用の2つのネストされたループを組み合わせます。出力を見やすく整列させるために、内側のループではタブ文字 \t を使って各要素の間隔を調整するのがポイントです。
基本的な考え方
外側のループが行の移動を担当し、内側のループが列の移動を担当します。各要素には $twoDimensionalArray[$row][$col] のようにアクセスし、要素ごとにタブ文字を出力することで、値が整然と並んだ行列形式になります。
twoDimensionalArray[row][col],"\t";
サンプルコード
<!DOCTYPE html>
<html>
<body>
<?php
$twoDimensionalArray = [];
$value = 7;
// 配列への値の格納
for ($row = 0; $row <= 2; $row++) {
for ($col = 0; $col <= 2; $col++) {
$twoDimensionalArray[$row][$col] = $value;
}
}
// 行列形式での表示
for ($row = 0; $row <= 2; $row++) {
for ($col = 0; $col <= 2; $col++) {
echo $twoDimensionalArray[$row][$col], "\t";
}
echo "<br>";
}
?>
</body>
</html>実行結果
777 777 777
上記のように、各行の末尾で <br> タグにより改行されるため、結果として3×3のきれいな行列形式で出力されます。
ポイントの解説
- 2つのループの役割分担: 外側のループは行を、内側のループは列を制御します。
- タブ文字
\t: 各要素の間にスペースを挿入し、列を揃えて視認性を高めます。 - 改行処理: 内側のループが1周終わるごとに
<br>を出力して、次の行へ移動します。
なお、配列の添字は必ず変数 $row・$col を使って [$row][$col] と指定してください。[row][col] のようにドル記号を省略すると、未定義の定数として扱われるためエラーや意図しない動作の原因になります。
-
PHPのarray()関数とは?配列の作成方法をわかりやすく解説
PHPのarray()関数は、配列を作成するための関数です。PHPにおける配列には、主に以下の3種類が存在します。インデックス配列 − 数値インデックス(0から始まる番号)で要素を管理する配列連想配列 − 文字列などの名前付きキーで要素を管理する配列多次元配列 − 配列の中に1つ以上の配列を含む、入れ子構造の配列構文// 数値インデックスを持つ配列(インデックス配列) array(value1, value2, ...); // 名前付きキーを持つ配列(連想配列) array(key1 => value1, key2 => value2, ...)パラメータvalue − 配列に
-
C#で配列を異なるサイズの新しい配列に置き換える方法
C#で既存の配列を異なるサイズの新しい配列に置き換えるには、Array.Resizeメソッドを使用します。このメソッドは、指定したサイズの新しい配列を作成し、元の配列の要素を新しい配列にコピーした上で、元の配列変数を新しい配列で置き換えます。Array.Resizeメソッドでは、refキーワードを使って元の配列への参照を渡し、第2引数に新しい配列のサイズを指定します。Array.Resize<char>(ref arr, 4);サイズ変更後は、以下のように新しく追加された要素に値を設定できます。コード例using System; class Program { &nbs