- <pre>
- <?php
- $start_row = 0;
- $start_col = 0;
- $arr = array(
- array("11", "12", "13", "14"),
- array("21", "22", "23", "24"),
- array("31", "32", "33", "34"),
- array("41", "42", "43", "44")
- );
- //print_r($arr);
- dyadic_array_exchange($arr, $start_row, $start_col);
- dyadic_array_exchange2($arr, $start_row, $start_col);
- function dyadic_array_exchange($array, $start_row=0, $start_col=0){
- if(!$new_array) $new_array = array();
- for($i = count($array) - 1; $i >= $start_row; $i--){
- for($j = count($array[$i]) - 1; $j >= $start_col; $j--){
- $new_array[$j][$i] = $array[$i][$j];
- }
- }
- // print_r($new_array);
- return $new_array;
- }
- function dyadic_array_exchange2($array, $start_row=0, $start_col=0){
- if(!$new_array) $new_array = array();
- if ($start_row) $array = array_slice($array, $start_row);
- $tmp_array = array_reverse($array);
- for($i = 0; $i < count($tmp_array); $i++){
- if ($start_col) $tmp_array[$i] = array_slice($tmp_array[$i], $start_col);
- $new_array[] = array_reverse($tmp_array[$i]);
- }
- // print_r($new_array);
- return $new_array;
- }
- ?>
- </pre>