>백엔드 개발 >PHP 튜토리얼 >키 이름을 유지하면서 PHP에서 다차원 배열을 정렬하는 방법은 무엇입니까?

키 이름을 유지하면서 PHP에서 다차원 배열을 정렬하는 방법은 무엇입니까?

WBOY
WBOY원래의
2024-05-03 21:51:01680검색

키 이름을 유지하면서 다차원 배열 정렬: 1. uksort()를 사용하여 키 값에 따라 정렬하고 1, -1 또는 0을 반환하여 키 값의 상대적 순서를 나타내는 비교 함수를 제공합니다. 2. krsort()를 사용하여 배열 매개변수를 받아 키 값을 높은 값에서 낮은 값으로 정렬합니다.

如何在 PHP 中对多维数组进行排序,同时保留键名?

키 이름을 유지하면서 PHP에서 다차원 배열을 정렬하는 방법

때로는 키 이름을 유지하면서 다차원 배열을 정렬해야 할 수도 있습니다. 이를 위해 PHP는 uksort()krsort() 함수를 제공합니다. uksort()krsort() 函数。

uksort

uksort() 函数根据数组键的值对数组进行排序。它接受两个参数:一个包含要排序的数组和一个比较函数。比较函数应返回以下值之一:

  • 1,如果数组的第一个元素应在第二个元素之前
  • -1,如果数组的第一个元素应在第二个元素之后
  • 0,如果数组的第一个元素等于第二个元素
<?php

$cars = [
    "Mercedes" => "Germany",
    "BMW" => "Germany",
    "Toyota" => "Japan",
    "Honda" => "Japan"
];

uksort($cars, function($a, $b) {
    return strcmp($a, $b);
});

foreach ($cars as $key => $value) {
    echo "$key: $value\n";
}

?>

输出:

BMW: Germany
Honda: Japan
Mercedes: Germany
Toyota: Japan

krsort

krsort()

uksort

🎜🎜uksort() 함수는 배열 키 값을 기준으로 배열을 정렬합니다. 이는 정렬할 배열을 포함하는 배열과 비교 함수라는 두 가지 매개변수를 허용합니다. 비교 함수는 다음 값 중 하나를 반환해야 합니다. 🎜
  • 1, 배열의 첫 번째 요소가 두 번째 요소보다 먼저 와야 하는 경우
  • -1, 배열의 첫 번째 요소인 경우 두 번째 요소 뒤에 있어야 합니다.
  • 배열의 첫 번째 요소가 두 번째 요소와 같은 경우 0입니다.
<?php

$cars = [
    "Mercedes" => "Germany",
    "BMW" => "Germany",
    "Toyota" => "Japan",
    "Honda" => "Japan"
];

krsort($cars);

foreach ($cars as $key => $value) {
    echo "$key: $value\n";
}

?>
🎜출력: 🎜
Toyota: Japan
Honda: Japan
Mercedes: Germany
BMW: Germany
🎜🎜krsort🎜🎜🎜 krsort() 함수는 배열을 정렬하고 키 값을 높은 순으로 정렬합니다. 정렬할 배열이라는 하나의 매개변수를 받습니다. 🎜rrreee🎜출력: 🎜rrreee

위 내용은 키 이름을 유지하면서 PHP에서 다차원 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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