>  기사  >  백엔드 개발  >  원래 키 이름을 유지하면서 PHP를 사용하여 특정 키-값 쌍을 기반으로 배열을 정렬하는 방법은 무엇입니까?

원래 키 이름을 유지하면서 PHP를 사용하여 특정 키-값 쌍을 기반으로 배열을 정렬하는 방법은 무엇입니까?

PHPz
PHPz원래의
2024-04-30 16:30:02509검색

PHP uasort 함수를 사용하고 원래 키 이름을 유지하면서 배열의 특정 키 값에 따라 배열을 정렬하는 비교 함수를 제공합니다. 구체적인 단계는 다음과 같습니다. 두 개의 키-값 쌍을 매개변수로 받아들이고 정수를 반환하는 비교 함수를 정의하고 uasort 함수를 호출하여 정렬할 배열을 전달하면 정렬된 배열이 원래 키를 유지합니다. 이름.

如何使用 PHP 根据数组中某个具体键值对进行排序,保留原始键名?

PHP를 사용하여 원래 키 이름을 유지하면서 배열의 특정 키-값 쌍에 따라 정렬하는 방법은 무엇입니까?

PHP에서는 원래 키 이름을 유지하면서 배열의 특정 키-값 쌍에 따라 정렬하려면 uasort 함수를 사용하세요. 구문은 다음과 같습니다. uasort 函数可以根据数组中某个具体键值对进行排序,同时保留原始键名。下面是它的语法:

uasort(array $array, callable $value_compare_func)

其中:

  • array 要排序的数组
  • value_compare_func 一个比较函数,它将被用来比较数组中的两个键值对

比较函数应该接受两个参数(数组中两个元素的键值对)并返回一个整数:

  • -1 如果第一个键值对应该排在第二个键值对之前
  • 0 如果两个键值对相等
  • 1 如果第一个键值对应该排在第二个键值对之后

实战案例

假设我们有一个名为 $data

$data = [
    'John Doe' => 85,
    'Jane Smith' => 90,
    'Bob Jones' => 75
];

위치:

  • array 정렬할 배열
  • value_compare_func 정렬할 비교 함수 배열에 있는 두 개의 키-값 쌍을 비교하는 데 사용됩니다.
비교 함수는 두 개의 매개변수(배열에 있는 두 요소의 키-값 쌍)를 허용하고 정수를 반환해야 합니다.

    -1🎜 첫 번째 키-값 쌍이 두 번째 키-값 쌍보다 먼저 정렬되어야 하는 경우
  • 🎜0🎜 두 개의 키-값 쌍이 동일한 경우
  • 🎜1🎜 첫 번째 키-값 쌍을 두 번째 키-값 쌍 다음에 정렬해야 하는 경우
🎜🎜실용 사례🎜🎜🎜 $data라는 배열이 있다고 가정합니다. >, 여기에는 학생 정보와 성적이 포함됩니다. 🎜
uasort($data, function($a, $b) {
    return $a - $b;
});
🎜 다음 코드를 사용하여 원래 키 이름을 유지하면서 성적을 기준으로 배열을 정렬할 수 있습니다. 🎜
print_r($data);
// 输出:
// Array
// (
//     [Jane Smith] => 90
//     [John Doe] => 85
//     [Bob Jones] => 75
// )
🎜정렬된 배열은 다음과 같습니다. 🎜rrreee

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

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