PHP: объединение массивов одинаковой длины в многомерный массив, где оба заканчиваются как значения (а не ключи)?

У меня два массива одинаковой длины:

Array ( [0] => a [1] => b [2] => c ) Array ( [0] => 1 [1] => 2 [2] => 3 ) 

И я хочу закончить с этим:

 Array ( [0] => Array ( [0] => a [1] => 1 ) [1] => Array ( [0] => b [1] => 2 ) [2] => Array ( [0] => c [1] => 3 ) ) 

array_combine сделал бы один набор вышеуказанных значений в ключах массива, чего я не хочу – я хочу, чтобы оба они заканчивались как значения массива, объединяя каждый элемент из двух массивов в новый массив.

Есть ли встроенная функция для этого или мне нужно сворачивать самостоятельно?

Попробуй это:

 $result = array(); foreach ($array1 as $i => $val) { $result[] = array($val, $array2[$i]); } 

http://codepad.viper-7.com/Jx5H1Q

Если у вас есть строковые ключи, вы можете использовать array_merge_recursive для их объединения. Как бы то ни было, вам нужно будет сделать что-то еще. Например:

 $result = Array(); $arrays = Array($array1,$array2...); foreach($arrays as $arr) { foreach($arr as $k=>$v) $result[$k][] = $v; }