php怎么求两个数组
时间 : 2023-03-26 17:03:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在 PHP 中,可以使用 array_merge() 函数将两个数组合并成一个数组。这个函数接受任意数量的数组参数,并将它们合并成一个新的数组,其中新数组的键名将是原先数组的键名(如果有重复的键名,则后面的键值将覆盖前面的键值),键值则按照原先数组的顺序依次排列。

下面是 array_merge() 函数的使用示例:

```php

$array1 = array('apple', 'banana', 'cherry');

$array2 = array('date', 'elderberry', 'fig');

$result = array_merge($array1, $array2);

print_r($result);

输出结果为:

Array

(

[0] => apple

[1] => banana

[2] => cherry

[3] => date

[4] => elderberry

[5] => fig

)

在上面的示例中,$array1 和 $array2 是两个分别包含水果名称的数组,array_merge() 函数将它们合并成一个新的数组 $result,该数组包含 6 种水果。

需要注意的是,如果要将两个关联数组合并成一个新的数组,则可以使用加法运算符 "+",例如:

```php

$array1 = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry');

$array2 = array('d' => 'date', 'e' => 'elderberry', 'f' => 'fig');

$result = $array1 + $array2;

print_r($result);

输出结果为:

Array

(

[a] => apple

[b] => banana

[c] => cherry

[d] => date

[e] => elderberry

[f] => fig

)

在上面的示例中,$array1 和 $array2 都是关联数组,使用加号运算符将它们合并成一个新的关联数组 $result,该数组包含了所有的键和值。

总结来说,PHP 中可以使用 array_merge() 函数将两个数组合并成一个新的数组,也可以使用加法运算符 "+" 来将两个关联数组合并成一个新的关联数组。

PHP中求两个数组的方法有很多种,下面我为大家介绍几种比较常用的方法。

一、使用array_merge函数合并数组

我们可以使用PHP中的array_merge函数将两个数组合并成一个新的数组,该函数会将两个数组合并到一个数组中,并且保留原数组的键名和索引值。语法如下:

array array_merge ( array $array1 [, array $... ] )

该函数接收一个或多个数组作为参数,返回一个合并后结果的数组。示例代码如下:

```php

$array1 = array('apple', 'banana');

$array2 = array('orange', 'pear');

$result = array_merge($array1, $array2);

print_r($result);

执行结果为:

Array

(

[0] => apple

[1] => banana

[2] => orange

[3] => pear

)

二、使用"+"运算符合并数组

除了使用array_merge函数外,我们还可以使用"+"运算符来合并两个数组,通过该运算符,可以将两个数组合并为一个新数组,同时保留原数组的键名。示例代码如下:

```php

$array1 = array('a' => 'apple', 'b' => 'banana');

$array2 = array('c' => 'orange', 'd' => 'pear');

$result = $array1 + $array2;

print_r($result);

执行结果为:

Array

(

[a] => apple

[b] => banana

[c] => orange

[d] => pear

)

需要注意的是,使用"+"运算符时,如果两个数组中存在相同的键名,那么该键名对应的值是第一个数组中该键名对应的值。

三、使用array_merge_recursive函数合并数组

如果有多维数组需要合并,我们可以使用PHP中的array_merge_recursive函数。该函数可以递归合并两个或更多个数组,如果键名相同并且对应的值为数组,则该函数会递归合并到一个数组中。

```php

$array1 = array('colors' => array('red', 'green'), 'fruits' => array('apple', 'banana'));

$array2 = array('colors' => array('blue'), 'fruits' => array('pear'));

$result = array_merge_recursive($array1, $array2);

print_r($result);

执行结果为:

Array

(

[colors] => Array

(

[0] => red

[1] => green

[2] => blue

)

[fruits] => Array

(

[0] => apple

[1] => banana

[2] => pear

)

)

需要注意的是,使用array_merge_recursive函数时,如果相同的键名对应的值都是数组,则这些数组将被递归合并。如果键名相同但是对应的值不是数组,则后面的值会覆盖前面的值。

综上所述,以上就是PHP中求两个数组的方法,使用合适的方法可以让代码更加简洁和高效。