이 기사의 예에서는 PHP 사용자 정의 함수를 통해 2차원 배열 정렬 함수를 구현하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
/**作用: 二维数组排序函数,支持多键名排序 * 返回: 排序好的数组 * 使用: array_msort(数组,需要排序的键名,排序方式); * 例子: array_msort($cflist,"chapter_orderid","SORT_ASC"); * array_msort($arr,"name","SORT_ASC","type","SORT_DESC","size","SORT_ASC","SORT_STRING"); */ function array_msort($ArrayData,$KeyName1,$SortOrder1 = "SORT_ASC",$SortType1 = "SORT_REGULAR") { if(!is_array($ArrayData)) { return $ArrayData; } // 获取参数数量. $ArgCount = func_num_args(); // 排序,并放置到SortRule数组 for($i = 1;$i < $ArgCount;$i ++) { $Arg = func_get_arg($i); if(!eregi("SORT",$Arg)) { $KeyNameList[] = $Arg; $SortRule[] = '$'.$Arg; } else { $SortRule[] = $Arg; } } // Get the values according to the keys and put them to array. foreach($ArrayData AS $Key => $Info) { foreach($KeyNameList AS $KeyName) { ${$KeyName}[$Key] = $Info[$KeyName]; } } // Create the eval string and eval it. $EvalString = 'array_multisort('.join(",",$SortRule).',$ArrayData);'; eval($EvalString); return $ArrayData; }
더 많은 PHP 관련 콘텐츠에 관심이 있는 독자는 이 사이트의 특별 주제를 확인할 수 있습니다. 완전한 PHP 배열(어레이) 연산 기술" ", "php 정렬 알고리즘 요약", "php에서 일반적으로 사용되는 순회 알고리즘 및 기술 요약", "php 데이터 구조 및 알고리즘 튜토리얼", "php 프로그래밍 알고리즘 요약", "php 수학적 연산 기술 요약", "php 정규식 사용법" 요약", "PHP 연산 및 연산자 사용법 요약", "PHP 문자열(문자열) 사용법 요약" 및 "일반적인 PHP 데이터베이스 조작 기술 요약"
바랍니다. 이 기사는 PHP 프로그래밍에 종사하는 모든 사람에게 도움이 될 것입니다.
위에서는 PHP 다차원 배열의 내용을 포함하여 2차원 배열 정렬 기능을 구현하는 PHP 다차원 배열 PHP 사용자 정의 함수를 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.