php - 在PHP中使用 array_combine,将 array array 和其他 array 结合起来

  显示原文与译文双语对照的内容
0 0

我正在使用 array 函数来获得更好的理解。

下面我有三个数组:


$cardNumber = array(2, 4, 5, 8, 9);
$playerName = array('Julian', 'Brad', 'Chloe', 'Laura', 'Paul');
$playerWins = array(4, 5, 1, 2, 6);

我正在尝试实现以下 array 结构:


array (size=5)
 2 => 
 array (size=2)
 0 => string 'Julian' (length=6)
 1 => int 4
 4 => 
 array (size=2)
 0 => string 'Brad' (length=4)
 1 => int 5
 5 => 
 array (size=2)
 0 => string 'Chloe' (length=5)
 1 => int 1
 8 => 
 array (size=2)
 0 => string 'Laura' (length=5)
 1 => int 2
 9 => 
 array (size=2)
 0 => string 'Paul' (length=4)
 1 => int 6

我决定将 $playerName$playerWins 结合使用 array_combine(),然后将生成的array 与 $cardNumber 结合起来,这不会产生预期的输出。 我是否不正确理解 array_combine()

时间: 原作者:

0 0

对于 null,可以使用 array_map 和null作为回调,两个数据数组提供需要的array 结构。 然后将它的与使用 array_combine的键的array 组合在一起:


$result = array_combine($cardNumber, array_map(null, $playerName, $playerWins));

为了说明:


$result = array_map(null, $playerName, $playerWins);

产量:


Array
(
 [0] => Array
 (
 [0] => Julian
 [1] => 4
 )

 [1] => Array
 (
 [0] => Brad
 [1] => 5
 )

 [2] => Array
 (
 [0] => Chloe
 [1] => 1
 )

 [3] => Array
 (
 [0] => Laura
 [1] => 2
 )

 [4] => Array
 (
 [0] => Paul
 [1] => 6
 )
)

然后组合以获取密钥:


$result = array_combine($cardNumber, $result);

产量:


Array
(
 [2] => Array
 (
 [0] => Julian
 [1] => 4
 )

 [4] => Array
 (
 [0] => Brad
 [1] => 5
 )

 [5] => Array
 (
 [0] => Chloe
 [1] => 1
 )

 [8] => Array
 (
 [0] => Laura
 [1] => 2
 )

 [9] => Array
 (
 [0] => Paul
 [1] => 6
 )

)

原作者:
...