The two-dimensional array sorting method based on letters in PHP is very useful in actual development.
* @ Param array $ ArrayData the array to sort. * @ param string $ KeyName1 the first item to sort. * @ param string $ SortOrder1 the order to sort by ("SORT_ASC" | "SORT_DESC ") * @ param string $ SortType1 the sort type ("SORT_REGULAR" | "SORT_NUMERIC" | "SORT_STRING") * @ return array sorted array. */function sysSortArray ($ ArrayData, $ KeyName1, $ SortOrder1 = "SORT_ASC", $ SortType1 = "SORT_REGULAR") {if (! Is_array ($ ArrayData) {return $ ArrayData;} $ ArgCount = func_num_args (); for ($ I = 1; $ I <$ ArgCount; $ I ++) {$ Arg = func_get_arg ($ I); if (! Eregi ("SORT", $ Arg) {$ KeyNameList [] = $ Arg; $ SortRule [] = '$ '. $ Arg;} else {$ SortRule [] = $ Arg;} foreach ($ ArrayData AS $ Key => $ Info) {foreach ($ KeyNameList AS $ KeyName) {$ KeyName} [$ Key] = $ Info [$ KeyName] ;}}$ EvalString = 'Array _ multisort ('. join (",", $ SortRule ). ', $ ArrayData);'; eval ($ EvalString); return $ ArrayData ;} // #####################################$ arr = array ('name' => 'learn ', 'size' => '123', 'type' => 'jpe', 'Time' => '2017-11-13 ', 'class' => 'D ',), array ('name' => 'Kung Fu China', 'size' => '000000', 'type' => 'jpe ', 'Time' => '2017-11-13 ', 'class' => 'J',), array ('name' => 'programmatically ', 'size' => '35', 'type' => 'GIF', 'Time' => '2017-11-13 ', 'class' => 'A ',), array ('name' => 'Kung Fu China', 'size' => '65', 'type' => 'jpe ', 'Time' => '2017-02-13 ', 'class' => 'd',), array ('name' => 'Kung Fu of China ', 'size' => '5', 'type' => 'Icon ', 'Time' => '2017-12-13 ', 'Class' => 'C',),); print_r ($ arr); // Note: 153 is smaller than 65 in numerical order $ temp = sysSortArray ($ arr, "class", "SORT_ASC", "type", "SORT_DESC", "size", "SORT_ASC", "SORT_STRING"); echo""; print_r($temp); ?>
For more articles about how to sort two-dimensional arrays in PHP by letter, please follow the PHP Chinese website!