PHP:如何在重新排序数组时在1个数组中排序3个数组

Teu*_*ens 3 php arrays

我需要将3个数组合并为1,同时按照第二个数组的第一个条目跟随第一个数组的第一个条目的方式对新数组进行排序.

例:

$array1 = array(dog, cat, mouse);
$array2 = array(table, chair, couch);
$array3 = array(car, bike, bus);
Run Code Online (Sandbox Code Playgroud)

这些数组应该产生以下数组:

$resultarray = array(dog, table, car, cat, chair, bike, mouse, couch, bus);
Run Code Online (Sandbox Code Playgroud)

非常感谢您的回复!

Bab*_*aba 8

所有你需要的是 :

$resultarray = array();
foreach(array_map(null, $array1, $array2, $array3) as $set) {
    $resultarray = array_merge($resultarray, $set);
}
print_r($resultarray);
Run Code Online (Sandbox Code Playgroud)

产量

Array
(
    [0] => dog
    [1] => table
    [2] => car
    [3] => cat
    [4] => chair
    [5] => bike
    [6] => mouse
    [7] => couch
    [8] => bus
)
Run Code Online (Sandbox Code Playgroud)

参见现场演示

或简单的一行解决方案 - @deceze

call_user_func_array('array_merge', array_map(null, $array1, $array2, $array3));
Run Code Online (Sandbox Code Playgroud)

一线演示

  • `call_user_func_array('array_merge',array_map(null,$ array1,$ array2,$ array3))`: - (5认同)
  • 比提交的要好得多. (2认同)