array

(PHP 3, PHP 4, PHP 5)

array -- 配列を生成する

説明

array array ( [mixed ...] )

パラメータの配列を返します。パラメータには、 =>演算子によりインデックスを指定することもできます。 配列に関するより詳しい情報は配列型 のセクションをご覧ください。

注意: array()は、実際にはリテラル配列を表現するための 言語構成要素であり、通常の関数ではありません。

カンマ区切った構文 "index => values" は、インデックスと値を定 義します。インデックスは文字列または数値とすることが可能です。イ ンデックスが省略された場合、0から始まる整数インデックスが自動的に 生成されます。インデックスが整数の場合、次に生成されるインデック スは、整数インデックスの最大値 + 1 となります。同じインデックスを 2度定義した場合、後の定義により最初の定義が上書きされることに注意 してください。

一般的ではないですが、 最後に定義された配列エントリの後に続くカンマがある場合、 これは有効な構文です。

以下の例では、2 次元配列の生成方法、連想配列のキーの指定方法、 および通常の配列において添字番号をスキップし、それに続く 要素にアクセスする方法についてご紹介しています。

例 1. array()の例

<?php
$fruits
= array (
    
"fruits"  => array("a" => "orange", "b" => "banana", "c" => "apple"),
    
"numbers" => array(1, 2, 3, 4, 5, 6),
    
"holes"   => array("first", 5 => "second", "third")
);
?>

例 2. array() における自動インデックス

<?php
$array
= array(1, 1, 1, 1,  1, 8 => 1,  4 => 1, 19, 3 => 13);
print_r($array);
?>

上の例の出力は以下となります。

Array
(
    [0] => 1
    [1] => 1
    [2] => 1
    [3] => 13
    [4] => 1
    [8] => 1
    [9] => 19
)

インデックス '3' は二度定義されており、後の値 13 が保持されること に注意してください。インデックス 4 はインデックス 8 の後に定義され、 次に生成されるインデックス(値は19)は、最大のインデックスが 8 であ るため、9となります。

次の例は、1から始まる配列を作成します。

例 3. array() で1から始まる配列を作成

<?php
$firstquarter
= array(1 => 'January', 'February', 'March');
print_r($firstquarter);
?>

上の例の出力は以下となります。

Array
(
    [1] => January
    [2] => February
    [3] => March
)

Perl では、ダブルクオートで囲まれた配列の値にアクセスすることができます。 しかしながら、PHP では配列を中括弧で囲む必要があります。

例 4. ダブルクオートで囲まれた配列にアクセスする

<?php

$foo
= array('bar' => 'baz');
echo
"Hello {$foo['bar']}!"; // Hello baz!

?>

array_pad(), list(), count(), foreach, range()も参照してください。