Array
(
[a] => 1
[0] => 2
)
*/
通过自定义函数对PHP数组进行排序,有三个函数分别是:
uasort 通过自定义函数对PHP数组的键值进行排序,并且保留原来的索引关系。
uksort 通过自定义函数对PHP数组的键名进行排序,并且保留原来的索引关系。
usort通过自定义函数对PHP数组的键值进行排序,并且删除原来的索 引关系,从零开始建立新的索引。
下面是二维排序:
/**
* @package BugFree
* @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $
*
*
* Sort an two-dimension array by some level two items use array_multisort() function.
*
* sortArr($Array,"Key1","SORT_ASC","SORT_RETULAR","Key2"……)
* @author Chunsheng Wang
* @param array $ArrayData the array to sort.
* @param string $KeyName1 the first item to sort by.
* @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 sortArr($ArrayData,$KeyName1,$SortOrder1 = "SORT_ASC",$SortType1 = "SORT_REGULAR")
{
if(!is_array($ArrayData)) return $ArrayData;
// Get args number.
$ArgCount = func_num_args();
// Get keys to sort by and put them to SortRule array.
for($I = 1;$I $Info)
{
foreach($KeyNameList AS $KeyName) ${$KeyName}[$Key] = strtolower($Info[$KeyName]);
}