Good day! I am having errors in merging/combining/concatenating arrays.
For example I have arrays,
$array1 [] = array(
'var1' => $var1,
'var2' => $var2,
'var3' => $var3,
);
$array2 [] = array(
'var4' => $var4,
'var5' => $var5,
'var6' => $var6,
);
Those arrays have multiple records inside of them but have the same number of records.
When i var_dump them the structure looks like this:
//array1
array(3){
[0]=>array(3){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
}
[1]=>array(3){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
}
[2]=>array(3){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
}
}
//array2
array(3){
[0]=>array(3){
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
[1]=>array(3){
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
[2]=>array(3){
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
}
I want to add both arrays
$array_combined [] = array(
'var1' => $var1,
'var2' => $var2,
'var3' => $var3,
'var4' => $var4,
'var5' => $var5,
'var6' => $var6,
);
I think the structure should look like this when var_dump(ed):
//array_combined
array(3){
[0]=>array(6){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
[1]=>array(3){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
[2]=>array(3){
["var1"]=> string (4) "var1"
["var2"]=> string (4) "var2"
["var3"]=> string (4) "var3"
["var4"]=> string (4) "var4"
["var5"]=> string (4) "var5"
["var6"]=> string (4) "var6"
}
}
I tried:
$array_combine = array_combine($array1, $array2);
$array_merge = array_merge($array1, $array2);
$array_merge_recursive = array_merge_recursive($array1, $array2);
but i keep getting this error:
Notice: Undefined index: cmax in D:\xampp\htdocs\vra\GetVM – Copy.php on line 365
The code that i posted there is just similar to my real code.
Line 365 contains echo ( $record[‘var4’] ).
I was doing something like this to output the combined/merged array.
$array_merge = merge_array($array1, $array2)
foreach ( $array_merge as $record ) {
echo ( $record['var1'] );
echo ( $record['var2'] );
echo ( $record['var3'] );
echo ( $record['var4'] );//this is were the error occurs
echo ( $record['var5'] );//same error here
echo ( $record['var6'] );//same error here
}
Tried using array_combine(),array_merge_recursive and $combined_array = $array1 + $array2
I’d say the issue is stemming from you using multidimensional arrays and trying to combine them as single dimension arrays.
Instead of
Try
If you want to strictly combine them and never overright values from the first with the second, use
Some additional notes on array merging can be found at php.net