Перемещение элементов вверх или вниз в списке ассоциативных массивов php

Привет я хочу знать чтоЯ могу сделать, чтобы переместить элементы в ассоциативном массивевверх или вниз' например, для этого массива:

 Array ( [list] => 
      Array ( [Name1] => 1, 
              [Name2] => 1, 
              [Name3] => 1, 
              [Name4] => 1, 
              [Name5] => 1,  )
 ) 

Я знаю, как сделать это вnon-associative array в этом случае :

   $a = array('a','b','c','d','e');

   function down($a,$x) {
     if( count($a)-1 > $x ) {
    $b = array_slice($a,0,$x,true);
    $b[] = $a[$x+1];
    $b[] = $a[$x];
    $b += array_slice($a,$x+2,count($a),true);
    return($b);
     } else { 
            return $a; 
         }
   }

 function up($a,$x) {
   if( $x > 0 and $x < count($a) ) {
    $b = array_slice($a,0,($x-1),true);
    $b[] = $a[$x];
    $b[] = $a[$x-1];
    $b += array_slice($a,($x+1),count($a),true);
    return($b);
   } else { 
            return $a; 
       }
 }

  //Use 

  // Move item 4 up
  print_r(up($a,4));

Ответы на вопрос(2)

Ваш ответ на вопрос