我有2个阵列:
Array
(
[1] => image1
[4] => image2
)
Array
(
[0] => title 1
[2] => title 2
[3] => title 3
)
我只想合并这些数组并保持其键([1] => image1
也将在新数组中的[1]
)
请问好吗?谢谢!
答案 0 :(得分:2)
这应该有效:)
foreach ($array2 as $key => $value)
{
$array1[$key] = $value;
}
钥匙和钥匙array2中的值将在末尾附加。如果您的数组只是数字,则可以使用array_sort()
将其带到正确的顺序。
答案 1 :(得分:1)
我认为这个功能有效。你必须只使用数字键
$array1;
$array2;
array_weird_merge($array1, $array2){
$result = array();
//get the keys of each array
$keys1 = array_keys($array1);
$kesy2 = array_keys($array2);
//get the max keys of the 2 arrays
$max = max($key1, $key2);
//we go trough all the possible values
for ($i=0; $i<$max;$i++){
//if the array 1 has an element in the
//$i position, we put it in the result
//if not, then we check in the second
//array. (we give priority to the array
//that comes first)
if(isset($array1[$i])){
$result[$i] = $array1[$i];
}else if(isset($array2[$i])){
$result[$i] = $array2[$i];
}
}
return $result;
}