PHP - array_combine() 函数


定义和用法

array_combine() 函数采用两个不同或相同的数组作为输入,并使用 keys 数组中的值作为键,将 values 数组中的值作为相应的值来创建新数组。

在函数中传递两个数组时,请确保两个数组中的元素数量相等,否则将返回错误。

语法

array array_combine ( array $keys, array $values );

参数

参数 描述
keys (mandatory)

第一个数组,其值将用作创建新数组的键。

values (mandatory)

第二个数组,其值将用作创建新数组的值。

返回值

PHP array_combine() 函数返回组合数组,如果每个数组的元素数不相等或数组为空,则返回 FALSE。

PHP 版本

此函数最初是在 PHP 版本 5.0.0 中引入的。

错误/异常

如果 keysvalues 数组的元素数量不匹配,则会引发 E_WARNING

例子

将两个不同数组组合成一个数组的示例 -

<?php
   $a = array('green', 'red', 'yellow');
   $b = array('avocado', 'apple', 'banana');
   $c = array_combine($a, $b);

   print_r($c);
?>

产生结果:

Array
(
    [green] => avocado
    [red] => apple
    [yellow] => banana
)

例子

将两个不同数组组合成一个数组,但这次我们在两个数组中使用了不相等数量的元素 -

<?php
   $a = array('green', 'red', 'yellow');
   $b = array('avocado', 'apple');
   $c = array_combine($a, $b);

   print_r($c);
?>

这将产生以下结果 -

PHP Warning:  array_combine(): Both parameters should have an equal number of elements in main.php on line 4

例子

两个键相同,则第二个键优先的示例 -

<?php
   $a = array('green', 'green', 'yellow');
   $b = array('avocado', 'apple', 'banana');
   $c = array_combine($a, $b);

   print_r($c);
?>

产生结果 -

Array
(
    [green] => apple
    [yellow] => banana
)

例子

使用相同输入数组创建一个新数组的例子 -

<?php
   $a = array('green', 'green', 'yellow');
   $c = array_combine($a, $a);

   print_r($c);
?>

产生结果 -

Array
(
    [green] => green
    [yellow] => yellow
)