如何在php中合并此数组
这是我的第一个数组如何在php中合并此数组,php,arrays,multidimensional-array,merge,Php,Arrays,Multidimensional Array,Merge,这是我的第一个数组var\u dump array(1) { [0]=> array(55) { ["Primary Maths"]=> NULL ["Primary Environment"]=> NULL ["Primary English"]=> NULL ["Primary Sinhala"]=>..........etc 在第一个数组中包含55个数组元素。 这是我的第二个数组var\u du
var\u dump
array(1) {
[0]=>
array(55) {
["Primary Maths"]=>
NULL
["Primary Environment"]=>
NULL
["Primary English"]=>
NULL
["Primary Sinhala"]=>..........etc
在第一个数组中包含55个数组元素。
这是我的第二个数组var\u 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)
有什么方法可以做到这一点吗?可能有一些内置函数的组合可以使用,但每次我发现自己处于这样的情况下,我宁愿只写两个循环,然后用它来完成。如果您决定遵循我的示例,您可以做的是对第一个数组进行foreach,然后对foreach中的第二个数组使用带有12个循环的正则for。您可能还希望在第二个数组上使用array_值,以避免与密钥发生冲突
祝你好运 这将把第二个数组分割成一个多维数组,分成12个元素块,并将其与第一个数组合并。但是,看起来您需要使用第1个数组中的键,因此我添加了函数array_键:
array_combine(array_keys($a1), array_chunk($a2, 12))
如果我很好地理解了这个问题,这将完成以下工作:
$result = $array1[0];
$temp = array_chunk($array2[0],12);
foreach ($result as &$value) {
$value = array_shift($temp)
}
尝试使用array_combine(array_keys($a1),array_chunk($a2[0],12))-看起来第二个数组中有一个数组警告:array_combine()[function.array combine]:在第115行的/home/itstec2/public_html/vista/paysearch.php中,两个参数的元素数量应该相等。那么,$a1必须具有与$a2/12相同的元素数量。显然,$a1没有55个元素,或者$a2没有660个元素。我们可以从数组2中创建一个新数组,其中包含12个值和55个数组索引吗?如果希望$a2有12个值和55个元素数组,那么使用数组块($a2[0],55)。请注意,[0]仅在这里,因为当我查看上面的数组时,我看到660元素数组是另一个数组的第一个元素。