0

这是我的第一个数组var_dump

array(1) {
  [0]=>
  array(55) {
    ["Primary Maths"]=>
    NULL
    ["Primary Environment"]=>
    NULL
    ["Primary English"]=>
    NULL
    ["Primary Sinhala"]=>..........etc

在第一个数组中包含 55 个数组元素。.

这是我的第二个数组var_dump

array(1) {
  [0]=>
  array(660) {
    ["Primary_MathsJAN"]=>
    string(7) "checked"
    ["Primary_MathsFEB"]=>
    string(7) "checked"
    ["Primary_MathsMAR"]=>
    string(7) "checked" ...etc

在第一个数组中包含 660 个数组元素。.

所以我想将第一个数组与第二个数组合并(加入)。但我想要这样。我想将第一个数组的一个值与第二个数组的 12 个值连接起来......

1st array elements(55) * 12 = 2nd array elements(660)

有没有办法做到这一点?

4

3 回答 3

0

您可能会使用一些内置函数的组合,但每次我发现自己处于这种情况时,我宁愿只写 2 个循环并完成它。如果您决定按照我的示例进行操作,您可以对第一个数组进行 foreach,然后对 foreach 中的第二个数组使用具有 12 个循环的常规 for。您可能还想在第二个数组上使用 array_values 以省去与键冲突的麻烦。

最良好的祝愿和好运!

于 2013-05-24T02:07:32.517 回答
0

这会将第二个数组拆分为一个多维数组,分成 12 个元素块,并将其与第一个数组合并。但是,看起来您需要使用第一个数组中的键,所以我添加了函数 array_keys:

array_combine(array_keys($a1), array_chunk($a2, 12))
于 2013-05-24T02:11:46.020 回答
0

如果我很好地理解了这个问题,这将完成这项工作:

$result = $array1[0];
$temp = array_chunk($array2[0],12);
foreach ($result as &$value) {
    $value = array_shift($temp)
}
于 2013-05-24T10:44:38.777 回答