HOWTO · PHP
在 PHP 中推送元素到關聯陣列
在本教程中,我們將瞭解如何在 PHP 中將專案或元素新增到關聯陣列中。
在本教程中,我們將看到如何將專案或元素新增到關聯陣列中。
首先,我們將介紹什麼以及如何建立關聯陣列。然後我們將元素新增到我們的關聯陣列中。
什麼是 PHP 中的關聯陣列
關聯陣列是包含字串而不是索引的陣列。我們使用鍵值而不是線性索引來儲存關聯陣列的元素。
這是關聯陣列的示例以及我們如何使用它。
<?php
// Create an array called age.
$age = array('Mike' => '24','Ann' => '19', 'Alice' => '32' );
echo "Mike is " . $age['Mike'] . ' years old.';
?>
輸出:
Mike is 24 years old.
使用 array_push() 方法將元素插入 PHP 中的關聯陣列
如果我們有一個如下所示的關聯陣列,我們將如何新增新條目?
$color = array('a' => 'Red', 'b' => 'Blue' )
我們將在下面的示例程式碼中為上述陣列新增兩種新顏色。
<?php
$color = array('a' => 'Red', 'b' => 'Blue' );
// Add Green and White to the array.
array_push($color, 'Green', 'White');
print_r($color);
?>
輸出:
Array
(
[a] => Red
[b] => Blue
[0] => Green
[1] => White
)
每當你將專案新增到陣列時,它都會分配數字索引鍵。
使用 array_merge() 方法將元素插入 PHP 中的關聯陣列
在某些時候,你將擁有一個如下所示的關聯陣列。
$age = array("Mike" => "24","Ann" => "19", "Alice" => "19" )
我們如何新增像 22 歲的 John 這樣的條目?
在這種情況下,array_push() 方法將不起作用。最好使用 array_merge(),如下所示。
<?php
$age = array("Mike" => "24","Ann" => "19", "Alice" => "19" );
$age1 = array("John" => "22");
//Merge the two arrays.
print_r(array_merge($age, $age1));
?>
輸出:
Array
(
[Mike] => 24
[Ann] => 19
[Alice] => 19
[John] => 22
)
在上面的程式碼中,我們決定以新陣列的形式新增我們的新條目。函式 array_merge() 將兩者組合成一個陣列。
你可以合併任意數量的陣列。如果多個元素共享相同的鍵,則最後一個元素將覆蓋第一個元素。
如果你感到困惑,這裡有一個例子。
<?php
$color = array('a' => 'Red', 'b' => 'Blue' );
$color1 = array('b' => 'Neon', 'c' => 'Green');
print_r(array_merge($color,$color1));
?>
輸出:
Array
(
[a] => Red
[b] => Neon
[c] => Green
)
如輸出所示,Blue 已被 Neon 覆蓋。
如下所示,我們使用 array_merge_recursive() 來解決這個問題。
<?php
$color = array('a' => 'Red', 'b' => 'Blue' );
$color1 = array('b' => 'Neon', 'c' => 'Green');
print_r(array_merge_recursive($color,$color1));
?>
輸出:
Array
(
[a] => Red
[b] => Array
(
[0] => Blue
[1] => Neon
)
[c] => Green
)