Даже не задумываясь об этом, «зубчатые массивы» в значительной степени идентичны «прямоугольным массивам» (которые PHP не поддерживает), поэтому используйте em:
$newArray = array(array())
for($i=3; $i >= 0; --$i) {
for($j=0; $j < 4; ++$j) {
$newArray[$j][3-$i] = $oldArray[$i][$j];
}
}