>  기사  >  백엔드 개발  >  PHP 다차원 배열 정렬 공개: 정렬 알고리즘의 미스터리 공개

PHP 다차원 배열 정렬 공개: 정렬 알고리즘의 미스터리 공개

WBOY
WBOY원래의
2024-04-29 16:42:01814검색

PHP는 다차원 배열을 정렬하는 다양한 방법을 제공합니다. sort() 및 asort() 함수를 사용하여 단일 키로 정렬하고 값을 각각 오름차순 및 내림차순으로 정렬합니다. 임의의 키를 기준으로 정렬하고 복잡한 규칙을 지원하는 사용자 정의 정렬 함수를 작성하세요. 동시에 여러 키로 정렬하려면 array_multisort() 함수를 사용하세요. 정렬 키와 정렬할 배열을 제공해야 합니다.

PHP 다차원 배열 정렬 공개: 정렬 알고리즘의 미스터리 공개

PHP 다차원 배열 정렬 공개: 정렬 알고리즘의 신비 공개

다차원 배열 정렬은 PHP 개발에서 일반적인 작업입니다. 다차원 배열을 정렬할 때 단일 또는 다중 키를 기준으로 정렬할 수 있습니다. 이 기사에서는 PHP에서 다차원 배열을 정렬하는 알고리즘을 살펴보고 실제 사례를 제공합니다.

Algorithm

내장 함수 sort()asort()sort()asort()

  • sort() 根据键的自然顺序对关联数组按值递增排序。
  • asort() 根据键的自然顺序对关联数组按值递减排序。

自定义排序函数

自定义排序函数允许您按任意键进行排序。当您需要根据复杂规则排序时,此方法很有用。

function compare($a, $b) {
  return strcmp($a['name'], $b['name']);
}

内置函数 array_multisort()

array_multisort()

  • sort() 키에 자연 순서는 값을 증가시켜 연관 배열을 정렬합니다.
  • asort() 키의 자연스러운 순서에 따라 값의 내림차순으로 연관 배열을 정렬합니다.

사용자 정의 정렬 기능

사용자 정의 정렬 기능을 사용하면 어떤 키로든 정렬할 수 있습니다. 이 방법은 복잡한 규칙에 따라 정렬해야 할 때 유용합니다.

$array = [
  ['name' => 'Alice', 'age' => 25],
  ['name' => 'Bob', 'age' => 32],
  ['name' => 'Eve', 'age' => 28],
];

내장 함수 array_multisort()

array_multisort()를 사용하면 동시에 여러 키를 사용하여 정렬할 수 있습니다. 두 개의 배열이 필요합니다. 하나는 정렬 키를 포함하고 다른 하나는 정렬할 배열을 포함합니다.

실용 사례다음 다차원 배열을 고려하세요.

usort($array, 'compare');
🎜🎜이름이 늘어나는 순서로 정렬🎜🎜
array_multisort(array_column($array, 'name'), SORT_ASC, array_column($array, 'age'), SORT_DESC);
🎜🎜이름이 늘어나는 순서로 정렬, 나이가 줄어드는 순서🎜🎜
print_r($array);
// [
//   ['name' => 'Alice', 'age' => 25],
//   ['name' => 'Eve', 'age' => 28],
//   ['name' => 'Bob', 'age' => 32],
// ]
🎜🎜정렬된 배열을 출력합니다.🎜🎜rrreee

위 내용은 PHP 다차원 배열 정렬 공개: 정렬 알고리즘의 미스터리 공개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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