我有这两个数组作为输出:
Value Array
(
[0] => 10100153
[1] => 2007
[2] => 350
[3] => 804082
[4] => WW006
[5] => WHT/NNY/OXGM
[6] => 35/38
[7] => 804082 WW00635/38
[8] => 0,00138857
[9] => Champion 3pk Quarter Socks
)
Numbers Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 7
[7] => 8
[8] => 9
[9] => 10
)
我想把它们结合起来,改变value数组的键值value和numbers数组的键值,所以它看起来像这样:
欲望输出
['Value' => '10100153', 'Number' => 1],
['Value' => '2007', 'Number' => 2],
['Value' => '390', 'Number' => 3],
['Value' => '804715', 'Number' => 4],
['Value' => 'WW001', 'Number' => 5],
['Value' => 'WHT/WHT/WHT', 'Number' => 6],
['Value' => '39/42', 'Number' => 7],
['Value' => '804715 WW00139/42', 'Number' => 8],
['Value' => '0.00138857', 'Number' => 9],
['Value' => '3pk Quarter Socks', 'Number' => 10]
我能找到的只有 array_combine
和 array_merge
,但是 array_merge
只是将数字数组添加到值数组的末尾,并且 array_combine
将数字添加到值数组文本的末尾
最佳答案
您可以使用 array_map
( doc ) 和 array_combine
( doc ) 作为:
$res = array_map(null, $valuesArray, $numbersArray);
$keys = array("Value", "Number");
$res = array_map(function ($e) use ($keys) {return array_combine($keys, $e);}, $res);
注意 array_map
中null
的使用。来自文档:
An interesting use of this function is to construct an array of arrays, which can be easily performed by using NULL as the name of the callback function
这样你就可以合并更多的数组 - 只要记住将正确的键添加到 $keys
实例:3v4l
关于php - 通过键合并(合并)2 个数组并更改结果数组中的键名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54902146/