| 
<?php
function sort_array($arr, $sort_string, $sort_function = "strcasecmp"){
 require("array_sort.class.inc");
 $array_sort = new array_sort($arr, $sort_string, $sort_function);
 if(!$array_sort->error["flag"]) return $array_sort->get_sorted_array();
 else return $arr;
 }
 
 $test_array = array(0 => array(    0 => "00016",
 1 => array("tbl_txt", "Allianz"),
 2 => array("tbl_txt", "DE0008404005"),
 3 => array("tbl_txt", "22"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "91.40"),
 6 => array("tbl_txt_pos", "92.25"),
 7 => array("tbl_txt_pos", "0.93")),
 1 => array(    0 => "00001",
 1 => array("tbl_txt", "Arcelor S.A."),
 2 => array("tbl_txt", "LU0140205948"),
 3 => array("tbl_txt", "187"),
 4 => array("tbl_txt", "2005-04-14"),
 5 => array("tbl_txt", "17.10"),
 6 => array("tbl_txt_neg", "15.50"),
 7 => array("tbl_txt_neg", "-9.36")),
 2 => array(    0 => "00001",
 1 => array("tbl_txt", "Arcelor S.A."),
 2 => array("tbl_txt", "LU0140205948"),
 3 => array("tbl_txt", "406"),
 4 => array("tbl_txt", "2005-02-17"),
 5 => array("tbl_txt", "18.80"),
 6 => array("tbl_txt_neg", "15.50"),
 7 => array("tbl_txt_neg", "-17.55")),
 3 => array(    0 => "00017",
 1 => array("tbl_txt", "BASF"),
 2 => array("tbl_txt", "DE0005151005"),
 3 => array("tbl_txt", "40"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "49.98"),
 6 => array("tbl_txt_pos", "50.05"),
 7 => array("tbl_txt_pos", "0.14")),
 4 => array(    0 => "00018",
 1 => array("tbl_txt", "EADS"),
 2 => array("tbl_txt", "NL0000235190"),
 3 => array("tbl_txt", "100"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "22.02"),
 6 => array("tbl_txt_pos", "22.03"),
 7 => array("tbl_txt_pos", "0.05")),
 5 => array(    0 => "00007",
 1 => array("tbl_txt", "Elringklinger AG NA O.N."),
 2 => array("tbl_txt", "DE0007856023"),
 3 => array("tbl_txt", "100"),
 4 => array("tbl_txt", "2005-02-17"),
 5 => array("tbl_txt", "69.15"),
 6 => array("tbl_txt_neg", "57.20"),
 7 => array("tbl_txt_neg", "-17.28")),
 6 => array(    0 => "00005",
 1 => array("tbl_txt", "Fuchs Petrolub Vz."),
 2 => array("tbl_txt", "DE0005790430"),
 3 => array("tbl_txt", "103"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "65.12"),
 6 => array("tbl_txt_pos", "67.58"),
 7 => array("tbl_txt_pos", "3.78")),
 7 => array(    0 => "00005",
 1 => array("tbl_txt", "Fuchs Petrolub Vz."),
 2 => array("tbl_txt", "DE0005790430"),
 3 => array("tbl_txt", "103"),
 4 => array("tbl_txt", "2005-02-17"),
 5 => array("tbl_txt", "75.00"),
 6 => array("tbl_txt_neg", "67.58"),
 7 => array("tbl_txt_neg", "-9.89")),
 8 => array(    0 => "00019",
 1 => array("tbl_txt", "Postbank"),
 2 => array("tbl_txt", "DE0008001009"),
 3 => array("tbl_txt", "55"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "36.30"),
 6 => array("tbl_txt_neg", "36.25"),
 7 => array("tbl_txt_neg", "-0.14")),
 9 => array(    0 => "00020",
 1 => array("tbl_txt", "SOFTWARE AG O.N."),
 2 => array("tbl_txt", "DE0003304002"),
 3 => array("tbl_txt", "75"),
 4 => array("tbl_txt", "2005-04-29"),
 5 => array("tbl_txt", "26.83"),
 6 => array("tbl_txt_neg", "26.44"),
 7 => array("tbl_txt_neg", "-1.45")),
 10 => array(0 => "00008",
 1 => array("tbl_txt", "Sartorius AG VZO O.N."),
 2 => array("tbl_txt", "DE0007165631"),
 3 => array("tbl_txt", "343"),
 4 => array("tbl_txt", "2005-02-18"),
 5 => array("tbl_txt", "16.71"),
 6 => array("tbl_txt_pos", "17.00"),
 7 => array("tbl_txt_pos", "1.74")),
 11 => array(0 => "00001",
 1 => array("tbl_txt", "Arcelor S.A."),
 2 => array("tbl_txt", "LU0140205948"),
 3 => array("tbl_txt", "187"),
 4 => array("tbl_txt", "2005-04-14"),
 5 => array("tbl_txt", "17.10"),
 6 => array("tbl_txt_neg", "15.50"),
 7 => array("tbl_txt_neg", "9.36")));
 
 $sort_string = "<[1][1]>|<[4][1]>|<[7][1]>";
 $test_array = sort_array($test_array, $sort_string);
 
 echo "<pre>\n";
 print_r($test_array);
 echo "</pre>\n";
 ?>
 |