>  기사  >  백엔드 개발  >  php array_multisort 배열 정렬에 대한 자세한 설명과 예

php array_multisort 배열 정렬에 대한 자세한 설명과 예

墨辰丷
墨辰丷원래의
2018-05-31 10:17:091476검색

이 글에서는 주로 배열을 정렬하는 php array_multisort의 자세한 설명과 예제 코드를 소개합니다. 필요한 친구들은 참고하면 됩니다.

PHP의 array_multisort() 함수를 사용하면 한 번에 여러 배열을 정렬할 수도 있고, 하나 이상의 차원에서 특정 다차원 배열을 정렬합니다. 이 문서에서는 array_multisort 함수를 사용하는 방법을 설명합니다.

array_multisort() 함수는 정렬된 배열을 반환합니다. 하나 이상의 배열을 입력할 수 있습니다. 이 함수는 첫 번째 배열을 먼저 정렬한 다음 다른 배열을 정렬하고, 두 개 이상의 값이 동일하면 다음 배열을 정렬합니다.

참고: 문자열 키 이름은 유지되지만 숫자 키 이름은 0에서 시작하여 1씩 증가하여 다시 색인화됩니다.

참고: 각 배열 뒤에 정렬 순서와 정렬 유형 매개변수를 설정할 수 있습니다. 설정하지 않으면 각 배열 매개변수는 기본값을 사용합니다.

Syntax

array_multisort(array1,sorting order,sorting type,array2,array3...)

매개변수 설명


매개변수 설명
array1 필수 . 정렬할 항목입니다.
정렬 순서

선택 사항입니다. 정렬 순서를 지정합니다. 가능한 값:

  • SORT_ASC - 기본값. 오름차순(A-Z)으로 정렬합니다.

  • SORT_DESC - 내림차순(Z-A)으로 정렬합니다.

정렬 유형

선택 사항입니다. 정렬 유형을 지정합니다. 가능한 값:

  • SORT_REGULAR - 기본값. 각 항목을 일반적인 순서로 배치합니다(표준 ASCII, 유형을 변경하지 않음).

  • SORT_NUMERIC - 각 항목을 숫자로 처리합니다.

  • SORT_STRING - 각 항목을 문자열로 처리합니다.

  • SORT_LOCALE_STRING - 현재 로케일을 기반으로 각 항목을 문자열로 처리합니다(setlocale()을 통해 변경 가능).

  • SORT_NATURAL - natsort()와 같은 자연 정렬을 사용하여 각 항목을 문자열로 처리합니다.

  • SORT_FLAG_CASE - SORT_STRING 또는 SORT_NATURAL과 결합하여(비트 OR) 문자열을 대소문자를 구분하지 않고 정렬할 수 있습니다.

array2 선택사항. 배열을 지정합니다.
array3 선택사항. 배열을 지정합니다.

반환 값

성공하면 TRUE를, 실패하면 FALSE를 반환합니다.

Description

array_multisort() 함수는 다중 배열 또는 다차원 배열을 정렬합니다.

매개변수의 배열은 테이블 열로 처리되고 행별로 정렬됩니다. 이는 SQL의 ORDER BY 절 기능과 유사합니다. 첫 번째 배열은 정렬할 기본 배열입니다. 배열의 행(값)이 동일하다고 비교되면 다음 입력 배열의 해당 값 크기에 따라 정렬됩니다.

첫 번째 매개변수는 배열이고 각 후속 매개변수는 배열이거나 다음 정렬 순서 플래그 중 하나일 수 있습니다(정렬 플래그는 기본 정렬 순서를 변경하는 데 사용됩니다):

SORT_ASC - 기본값, 오름차순으로 정렬. (A-Z)
SORT_DESC - 내림차순으로 정렬합니다. (Z-A)

그런 다음 정렬 유형을 지정할 수 있습니다:

SORT_REGULAR - 기본값. 각 항목을 규칙적인 순서로 배열하세요.
SORT_NUMERIC - 각 항목을 숫자순으로 정렬합니다.
SORT_STRING - 각 항목을 알파벳순으로 정렬합니다.

예제 1:

다차원 배열 정렬


<?php
 $ar = array(
    array("10",11,100,100,"a"),
    array(1,2,"2",3,1)
   );
 array_multisort($ar[0], SORT_ASC,SORT_STRING,$ar[1],SORT_NUMERIC,SORT_DESC);
 var_dump($ar);
?>


이 예에서 정렬 후 첫 번째 배열은 "10", 100, 100, 11, "a"가 됩니다(다음과 같이 사용됨). 문자열을 오름차순으로 정렬합니다.) 두 번째 배열에는 1, 3, "2", 2, 1(내림차순 숫자로 처리됨)이 포함됩니다.

실행 결과:


array(2) {
 [0]=> array(5) {
  [0]=> string(2) "10"
  [1]=> int(100)
  [2]=> int(100)
  [3]=> int(11)
  [4]=> string(1) "a"
 }
 [1]=> array(5) {
  [0]=> int(1)
  [1]=> int(3)
  [2]=> string(1) "2"
  [3]=> int(2)
  [4]=> int(1)
 }
}


예 2:

대소문자를 구분하지 않는 정렬

SORT_STRING 및 SORT_REGULAR는 모두 대소문자를 구분하며, 그 전에 대문자가 정렬됩니다. 소문자.
대소문자를 구분하지 않는 정렬을 수행하려면 원본 배열의 소문자 복사본에 따라 정렬하세요.


<?php
 $array=array(&#39;Alpha&#39;,&#39;atomic&#39;,&#39;Beta&#39;,&#39;bank&#39;);
 $array_lowercase=array_map(&#39;strtolower&#39;,$array);
 array_multisort($array_lowercase,SORT_ASC,SORT_STRING,$array);
 print_r($array);
?>


작업 결과:


Array
(
  [0] => Alpha
  [1] => atomic
  [2] => bank
  [3] => Beta
)


위 내용은 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되길 바랍니다.


관련 추천:

PHP로 단어 문서 읽는 방법

PHP로 그림의 기본 색상을 얻는 방법

PHP로 온라인 계산기 기능 구현


위 내용은 php array_multisort 배열 정렬에 대한 자세한 설명과 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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