array_~配列の拡張

array_pad()

array_pad()の構文は「array_pad(対象配列, 配列の合計要素数, 要素の値);」です。
array_pad()は配列のキーと値のセットを指定した要素数から対象配列の要素数を差し引いて、指定した要素値で埋めます。

1
2
$a = ["a" => "1","b" => "2","c" => "3"];
print_r(array_pad($a, -10, 'value'));
実行結果:
Array
(
[0] => value
[1] => value
[2] => value
[3] => value
[4] => value
[5] => value
[6] => value
[a] => 1
[b] => 2
[c] => 3
)

array_chunk()

array_chunk()の構文は「array_chunk(対象配列, 分割サイズ [, キーを保持するかどうか指定]);」です。
array_chunk()は対象配列の要素を分割サイズで指定した数値ごとに区切り、それを多次元配列で返します。第三引数は省略できますが、デフォルトではfalseのため、各キーが文字列であってもそのキーを整数で初めから降りなおします。trueを指定すると文字列のキーを保持します。

1
2
3
4
5
6
$a = ["a" => "1","b" => "2","c" => "3","d" => "4","e" => "5","f" => "6"];
echo '
<pre>';
print_r(array_chunk($a, 3, true));
echo '</pre>
';
実行結果:

Array
(
    [0] => Array
        (
            [a] => 1
            [b] => 2
            [c] => 3
        )

    [1] => Array
        (
            [d] => 4
            [e] => 5
            [f] => 6
        )

)

array_fill()

array_fill()の構文は「array_fill(キーの開始番号, そこから作成する個数, キーに入れる値);」です。
array_fill()は、指定した値で配列内を埋めます。

1
print_r(array_fill(5, 3, 'value'));

実行結果:
Array
(
[5] => value
[6] => value
[7] => value
)

array_sum()

array_sum()の構文は「array_sum(対象配列);」です。
array_sum()は配列内の値を合計します。

1
2
$a = [1,2,3];
echo array_sum($a);
実行結果:6

list()

list()の構文は「list(変数1 [, 変数・・・]);」です。
list()は変数に値を代入して使います。キーが数値の配列でのみ動きます。カンマを区切り文字として判断しており、使わない「値に対する変数(引数のこと)」はカンマのみにします。また、php7以降では一番左側の引数から受け取った値を代入していきます。それ以前のphpのバージョンでは逆順になります。尚、「list($a, $b) = $b」 などとしたケースでの動作は未定義のようです。将来的に操作順が変更される可能性もあるため、その順番に頼る構造は避けた方が無難のようです。

1
2
3
4
5
$a = ['野菜', '魚', '果物'];
list($vegetables, $fish, $fruit)=$a;
echo "トマトは{$vegetables}、みかんは{$fruit}、鯖は{$fish}。";
list($vegetables, $fish, $fruit)=$a;
echo "$vegetables$fruit のミックスジュース。";
実行結果:トマトは野菜、みかんは果物、鯖は魚。野菜 と 果物 のミックスジュース。