php - 文法 - 配列

 
1. 概要
2. 初期化
3. 配列数
4. 全件アクセス
5. 入れ子やら複数の代入やら
6. 要素の追加

1. 概要

 配列の詳細に関しては「PHP マニュアル - 言語リファレンス - 型 - 配列」でどうぞ。  PHP での配列は非常に微妙な型らしく。  マニュアルサイトの配列の説明を読んでもいわゆるハッシュの話をしているようにしか思えない。  他の言語でいう純粋な配列とは、ハッシュのキー値が配列の添え字になっているものと言っていいでしょうか?

2. 初期化

 初期化には以下のような方法があるようです。
<?php
$array1 = [];
$array2 = array();
?>

 以前は

$array = {};
 という書き方もありましたが、PHP 7.2 では推奨されていないようです。

3. 配列数

 配列の数を数えるには

int count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] );
 を使用します。
<?php
$array = array('foo', 'bar');
print('count($array)=['.count($array)."]\n");
?>

 これを実行すると以下の結果が得られます。

> php ソースファイル名.php
count($array)=[2]

4. 全件アクセス

 全件アクセスを行うには、下記の構文を用いるのが一般的です。

for ($配列 as $キー => $値)
{
	式
}
<?php
$array = array('foo', 'bar');

foreach ($array as $key => $value)
{
	print('$key['.$key.'] $value['.$value."]\n");
}

print("\n");
$array = array('foo'=>'hogehoge', 'bar'=>'fugafuga');

foreach ($array as $key => $value)
{
	print('$key['.$key.'] $value['.$value."]\n");
}
?>

 これを実行すると以下の結果が得られます。

> php ソースファイル名.php
$key[0] $value[foo]
$key[1] $value[bar]

$key[foo] $value[hogehoge]
$key[bar] $value[fugafuga]

5. 入れ子やら複数の代入やら

 配列の中に配列をつくることができます。  また、list 関数を使用することにより配列の要素を一括で代入することができます。  すなわち
<?php
$array = array
		(
			array(1, 2, 3),
			array(4, 5, 6),
		);

for ($i=0; $i<count($array); $i++)
{
	list($one, $two, $three) = $array[$i];

	print("$one ,$two, $three\n");
}
?>

 を実行すると以下の結果が得られます。

1 ,2, 3
4 ,5, 6

6. 要素の追加

 配列に要素を追加する方法は、いくつかあるようです。  末尾に追加する場合は array_push を使用します(「php - よく使う関数」参照)。