如何在 PHP 中向数组末尾添加元素


数组是用于在编程中处理数据的线性数据结构。有时在处理数组时,我们需要向现有数组中添加新元素。在本文中,我们将讨论几种在 PHP 中向数组末尾添加元素的方法,并提供代码示例、输出以及每种方法的时间和空间复杂度分析。

以下是向数组添加元素的不同方法:

使用方括号 []

我们在 PHP 中向数组末尾添加元素的方法是使用方括号 []。此语法仅适用于我们只想添加单个元素的情况。以下是语法:

$array[] = value;

示例

<?php
   $friends = ['Ayush', 'Antima'];
   $friends[] = 'Smrita'; 
   // Adding a single element to the end
   print_r($friends);
?>

输出

Array
(
 [0] => Ayush
 [1] => Antima
 [2] => Smrita
)

时间复杂度:O(1)

空间复杂度:O(1)

使用 array_push()

array_push() 函数用于向数组末尾添加一个或多个元素。此方法主要用于我们需要一次添加多个元素时。以下是语法:

array_push($array, $value1, $value2, ...)

示例

<?php
   $friends = ['Ayush', 'Antima'];
   array_push($friends, 'Smrita', 'Priti'); 
   // Adding multiple elements
   print_r($friends);
?>

以下是上述代码的输出:

Array
(
 [0] => Ayush
 [1] => Antima
 [2] => Smrita
 [3] => Priti
)

时间复杂度:如果添加多个元素,则为 O(n)

空间复杂度:O(1)

使用 array_merge()

如果我们想合并两个数组,我们使用 array_merge() 方法将多个数组合并为一个。当我们想将整个新元素数组添加到现有数组中时,此方法很有用。以下是语法:

$array = array_merge($array1, $array2, ...);

示例

<?php
   $friends = ['Ayush', 'Antima'];
   $newFriends = ['Smrita', 'Priti'];
   $friends = array_merge($friends, $newFriends);
   print_r($friends);
?>

以下是输出:

Array
(
 [0] => Ayush
 [1] => Antima 
 [2] => Smrita
 [3] => Priti
)

时间复杂度:O(n)

空间复杂度:O(n)

使用 + 运算符

我们还可以使用 + 运算符组合数组。我们应该始终记住,此方法主要适用于关联数组,并保留第一个数组的键。如果键重叠,则只有第一个数组的值将保留下来。以下是语法:

$array = $array1 + $array2;

示例

<?php
   $group1 = ['Ayush' => 1, 'Antima' => 2];
   $group2 = ['Smrita' => 3, 'Priti' => 4];
   $friends = $group1 + $group2;
   print_r($friends);
?>

以下是输出:

Array
(
 [Ayush] => 1
 [Antima] => 2
)

时间复杂度:O(n)

空间复杂度:O(1)

使用 array_splice()

array_splice() 函数是一个非常强大且有用的函数。此函数用于在数组中插入、删除或替换元素。我们可以使用此方法在任何位置(包括末尾)插入新元素。以下是此方法的语法:

array_splice($array, $offset, $length, $replacement);

示例

<?php
   $friends = ['Ayush', 'Antima'];
   array_splice($friends, count($friends), 0, ['Smrita', 'Priti']); // Inserting at the end
   print_r($friends);
?>

以下是输出:

Array ( [0] => Ayush [1] => Antima [2] => Smrita [3] => Priti )

时间复杂度:O(n)

空间复杂度:O(n)

更新于: 2024年11月1日

40 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告