>백엔드 개발 >PHP 튜토리얼 >내부 필드 값을 기준으로 다차원 PHP 배열을 정렬하는 방법은 무엇입니까?

내부 필드 값을 기준으로 다차원 PHP 배열을 정렬하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-18 16:33:12609검색

How to Sort a Multidimensional PHP Array by an Inner Field's Value?

PHP에서 내부 필드를 기준으로 다차원 배열 정렬

데이터베이스 테이블과 유사한 다차원 배열이 있고 각 외부 배열 요소는 필드 이름과 값을 포함하는 행과 각 내부 배열. "가격"과 같은 특정 필드를 기준으로 행(외부 배열 요소)을 정렬하려고 합니다.

이를 달성하려면 다음 PHP 함수를 활용할 수 있습니다.

array_multisort(array_column($yourArray, "price"), SORT_ASC, $yourArray);

이것은 line은 우리가 원하는 결과를 간결하게 달성합니다. array_multisort() 함수는 다음 세 가지 인수를 사용합니다.

  1. array_column($yourArray, "price") - 각 내부 배열의 "price" 필드 값을 1차원 배열로 추출합니다.
  2. SORT_ASC - "가격" 필드가 오름차순으로 정렬되도록 지정합니다. order.
  3. $yourArray - 정렬할 다차원 배열입니다.

이러한 함수를 함께 연결하면 "가격" 필드를 기준으로 외부 배열 요소를 효과적으로 정렬할 수 있습니다. 이 프로세스는 원래 $yourArray 변수를 덮어쓰므로 원래 순서를 유지해야 하는 경우 결과를 다른 변수에 할당하는 것이 좋습니다.

업데이트:

  • 최근 PHP 7 버전에서는 "&"를 사용하여 변수를 참조로 전달하면 오류가 발생할 수 있습니다. 이 문제를 해결하려면 다음 두 줄 해결 방법을 사용할 수 있습니다.
$col = array_column($yourArray, "price");
array_multisort($col, SORT_ASC, $yourArray);
  • PHP 8에서는 이 문제를 제거하여 조정 없이 한 줄 솔루션을 사용할 수 있습니다.

위 내용은 내부 필드 값을 기준으로 다차원 PHP 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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