PHP Заменить многомерные ключи массива

Я хотел бы заменить некоторые ключи, мой массив:

Array ( [0] => Array ( [0] => test1 [1] => test2 [2] => test3 [3] => test4 [4] => test5 [5] => test6 ) [1] => Array ( [0] => test7 [1] => test8 [2] => test9 [3] => test10 [4] => test11 [5] => test12 ) ) 

Мое желание:

 Array ( [45] => Array ( [0] => test1 [1] => test2 [2] => test3 [3] => test4 [4] => test5 [5] => test6 ) [51] => Array ( [0] => test7 [1] => test8 [2] => test9 [3] => test10 [4] => test11 [5] => test12 ) ) 

Примеры 45 и 51 являются примерами.

Как я могу это сделать? Я попробовал array_flip (), затем array_search (), но PHP говорит: «Можно только перевернуть значения STRING и INTEGER!»

Спасибо, в любом случае. С уважением

 $old_array = array( 0 => array(0=>'test1',1=>'test2',2=>'test3',3=>'test4',4=>'test5',5=>'test6'), 1 => array(0=>'test1',1=>'test2',2=>'test3',3=>'test4',4=>'test5',5=>'test6') ); $new_array = array( 45=>$old_array[0], 51=>$old_array[1] ); var_dump($new_array); 

Ключ в массиве можно изменить, установив новый ключ на значение старого ключа и затем отменив старый ключ.

 $myArray = array( "0" => array("0" => "test1", "1" => "test2"), "1" => array("0" => "test3", "1" => "test4")); echo "original array:\n"; var_dump($myArray); // modify keys $myArray["45"] = $myArray["0"]; unset($myArray["0"]); $myArray["51"] = $myArray["1"]; unset($myArray["1"]); echo "modified array:\n"; var_dump($myArray); с $myArray = array( "0" => array("0" => "test1", "1" => "test2"), "1" => array("0" => "test3", "1" => "test4")); echo "original array:\n"; var_dump($myArray); // modify keys $myArray["45"] = $myArray["0"]; unset($myArray["0"]); $myArray["51"] = $myArray["1"]; unset($myArray["1"]); echo "modified array:\n"; var_dump($myArray); с $myArray = array( "0" => array("0" => "test1", "1" => "test2"), "1" => array("0" => "test3", "1" => "test4")); echo "original array:\n"; var_dump($myArray); // modify keys $myArray["45"] = $myArray["0"]; unset($myArray["0"]); $myArray["51"] = $myArray["1"]; unset($myArray["1"]); echo "modified array:\n"; var_dump($myArray); 

генерирует:

 original array: array(2) { [0]=> array(2) { [0]=> string(5) "test1" [1]=> string(5) "test2" } [1]=> array(2) { [0]=> string(5) "test3" [1]=> string(5) "test4" } } modified array: array(2) { [45]=> array(2) { [0]=> string(5) "test1" [1]=> string(5) "test2" } [51]=> array(2) { [0]=> string(5) "test3" [1]=> string(5) "test4" } } 
 $keys = array('45','51'); $count = 6 ; $i = 0; foreach($keys as $key){ for($l = 0;$l<$count;$l++){ $last[$key][$l] = 'test'.$l+$i+1 ; } $i += $count; } print_r($last); 

установите $ count на любое количество требуемых массивов.