>  기사  >  백엔드 개발  >  2차원 배열 PHP 정렬 2차원 배열 알파벳순 정렬 구현 코드

2차원 배열 PHP 정렬 2차원 배열 알파벳순 정렬 구현 코드

WBOY
WBOY원래의
2016-07-29 08:46:331216검색

复代码 代码如下:


/**
* 2차원 배열을 특정 레벨 2 항목으로 정렬하려면 array_multisort() 함수를 사용하세요.
*
* sysSortArray($Array,"Key1","SORT_ASC","SORT_RETULAR","Key2"……)
* @author Chunsheng Wang
* @param array $ArrayData 정렬할 배열입니다.
* @param string $KeyName1 정렬 기준이 되는 첫 번째 항목입니다.
* @param string $SortOrder1 정렬 순서("SORT_ASC"|"SORT_DESC")
* @param string $SortType1 정렬 유형("SORT_REGULAR"|"SORT_NUMERIC"|"SORT_STRING")
* @return 배열 정렬된 배열입니다.
*/
function sysSortArray( $ArrayData,$KeyName1,$SortOrder1 = "SORT_ASC",$SortType1 = "SORT_REGULAR")
{
if(!is_array($ArrayData))
{
return $ArrayData;
}
$ArgCount = func_num_args();
for($I = 1;$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);';
평가($EvalString);
$ArrayData를 반환합니다.
}
//################ 示例 ################
$arr = array(
array(
'name' => '학술',
'size' => '1235',
'type' => 'jpe',
' time' => '1921-11-13',
'class' => 'D',
),
array(
'name' => '중국功夫',
'크기' => '153',
'유형' => 'jpe',
'시간' => '2005-11-13',
'클래스' > 'J',
),
array(
'name' => '编程',
'size' => '35',
'type' => ; 'gif',
'시간' => '1997-11-13',
'클래스' => 'A',
),
배열(
'이름 ' => '중국功夫',
'크기' => '65',
'유형' => 'jpe',
'시간' => ',
'class' => 'D',
),
array(
'name' => '중국功夫',
'size' => '5 ',
'유형' => '아이콘',
'시간' => '1967-12-13',
'클래스' =>
);
print_r($arr);
//注의의: 按光数字方式排序时 153 比 65 소문자
$temp = sysSortArray($arr,"class","SORT_ASC","type","SORT_DESC","size","SORT_ASC" ,"SORT_STRING");
echo "

"; 
print_r($temp);
?>

以上就介绍了二维数组 PHP排序之 新维数组的按光字母排序实现代码,包括了two维数组方面的内容,内容希望对PHP教程有兴趣的朋友有所帮助。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.