- array_slice: documentation ( source)
- print_r: documentation ( source)
- end: documentation ( source)
- array_merge: documentation ( source)
- array_flip: documentation ( source)
- key: documentation ( source)
- current: documentation ( source)
<?php
$array = array('a' => 2, 'b' => 1, 'c' => 4);
$first = array(key($array) => current($array)); // Get the first key/value pair
//array_shift($array); // Remove it from your array
$last = array_flip(array(end($array) => key($array))); // Get the last key/value pair
//array_pop($array); // Remove it from the array
$array = array_merge($last, array_slice($array,1,count($array) - 2), $first); // Put it back together
print_r($array);