array
(PHP 4, PHP 5, PHP 7, PHP 8)
array — 新建一個陣列
參數
-
values
-
語法「index => values」,用逗號分開,定義了索引和值。索引可以是字串或數字。如果省略了索引,會自動產生從 0 開始的整數索引。如果索引是整數,則下一個產生的索引將是目前最大的整數索引 + 1。注意如果定義了兩個完全一樣的索引,則後面一個會覆蓋前一個。
在最後一個定義的陣列專案之後加一個逗號雖然不常見,卻是合法的語法。
返回值
返回根據參數建立的陣列。參數可以用 =>
運算子給出索引。關於陣列是什麼的資訊請閱讀陣列一節。
範例
下面的例子演示了怎樣建立一個二維陣列,怎樣給相應的陣列指定鍵名,以及怎樣在普通陣列中略過和繼續數字索引。
示例 #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 那個)為 9,因為最大的索引是 8。
本例建立了從 1 開始的陣列。
示例 #3 從 1 開始索引的 array()
<?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() 是一個語言結構,用於字面上表示陣列,不是常規的函式。