array_fillを使って配列を初期化する。

PHPにおいて特定の値で埋められた配列を作成する際には、array_fillが利用できる。

<?php
$a = array_fill(0, 5, 1);
print_r($a);
// => ([0] => 1, [1] => 1, [2] => 1, [3] => 1, [4] => 1)

$b = array_fill(3, 5, 2);
print_r($b);
// => ([3] => 2, [4] => 2, [5] => 2, [6] => 2, [7] => 2)

第一引数に始まりのインデックス、第二引数に挿入するインデックス数、第三引数に挿入する値を渡す。
一つ目の例は(0, 5, 1)となっているので、先頭から1で埋められたインデックス数が5個の配列を返す。
二つ目の例は(3, 5, 2)で、インデックス番号3から2で埋められたインデックス数が5個の配列を返す。
このように簡単に初期化された配列を作成できる。

初めから何かのフラグ等の値で初期化された配列が欲しい時に使えそう。