为了更好地理解数组函数,我一直在玩数组函数。
下面我有三个阵列:
$cardNumber = array(2, 4, 5, 8, 9);
$playerName = array('Julian', 'Brad', 'Chloe', 'Laura', 'Paul');
$playerWins = array(4, 5, 1, 2, 6);
我正在尝试实现以下阵列结构:
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()
组合,然后将生成的数组与$cardNumber
组合,这不会产生我期望的输出。我对array_combine()
的理解有误吗?
您可以使用带有null的array_map
作为回调,并使用这两个数据数组为您提供所需的数组结构。然后使用array_combine
:将其与密钥的数组相结合
$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
)
)