PHP入門 - 配列

トップ > PHP入門 > 配列

配列(array)

array() を用いて、配列を用いることができます。配列の添字は 0 から始まります。

<?php
$array = array('Sun', 'Mon', 'Tue');
echo $array[0];    // Sun が出力される
echo $array[1];    // Mon が出力される
echo $array[2];    // Tue が出力される

キーを用いたを配列を表現することもできます。これを連想配列と呼びます。

<?php
$array['Sun'] = 'Sunday';
$array['Mon'] = 'Monday';
$array['Tue'] = 'Tuesday';
echo $array['Sun'];   // Sunday が出力される
echo $array['Mon'];   // Monday が出力される
echo $array['Tue'];   // Tuesday が出力される

上記は、下記の様に記述することも可能です。最後の要素の末尾のカンマ(,)は省略可能です。

<?php
$array = array(
    'Sun' => 'Sunday',
    'Mon' => 'Monday',
    'Tue' => 'Tuesday',   // ここのカンマ(,)は省略してもよい
);
echo $array['Sun'];   // Sunday が出力される
echo $array['Mon'];   // Monday が出力される
echo $array['Tue'];   // Tuesday が出力される

PHP 5.4 以降では、array(...) の代わりに [ ... ] と記述できるようになりました。

<?php
$array = [
   'Sun' => 'Sunday',
   'Mon' => 'Monday',
   'Tue' => 'Tuesday',
];

二重、三重の配列を表現することもできます。

<?php
for ($i = 0; $i < 10; $i++) {
    for ($j = 0; $j < 10; $j++) {
        $value[$i][$j] = $i * 100 + $j;
    }
}
echo $value[5][3] . "\n";

$box = array(
    'name' => 'SampleBox',
    'size' => array(
        'height' => 300,
        'width' => 400,
    )
);
echo $box['size']['height'] . "\n";

配列を順に処理する(foreach)

数値を添字とする配列は下記の様に参照することができます。

<?php
$array = array('Sun', 'Mon', 'Tue');
foreach ($array as $day) {
    echo "$day\n";
}

文字列を添字とする配列は下記の様に参照することができます。

<?php
$array = array(
    'Sun' => 'Sunday',
    'Mon' => 'Monday',
    'Tue' => 'Tuesday',
);
foreach ($array as $key => $value) {
    echo "$key = $value\n";
}

関数の戻り値で配列を受け取る(list)

関数やメソッドの戻り値として配列を受け取るには list() を用います。

<?php
function func() {
    return array("A", "B", "C");    // 配列を返す
}
list($x, $y, $z) = func();          // 配列を受け取る
echo "x=$x, y=$y, z=$z\n";

Copyright(C) 2013 杜甫々
初版:2013年5月12日、最終更新:2013年5月12日
http://www.tohoho-web.com/php/array.html