특정 속성을 기준으로 객체 배열 정렬
객체 배열을 처리할 때 특정 필드를 기준으로 정렬하는 것이 필수적일 수 있습니다. 데이터 관리. 이를 달성하려면 비교 동작을 사용자 정의할 수 있는 usort 함수를 활용할 수 있습니다.
usort를 사용한 사용자 정의 비교 함수:
사용자 정의 비교 함수를 정의하려면 usort에서는 다음 패턴을 따릅니다.
function cmp($a, $b) { return strcmp($a->name, $b->name); } usort($your_data, "cmp");
이 예에서 비교는 개체의 "이름" 속성을 기반으로 합니다. "name"을 관련 속성으로 바꿀 수 있습니다.
대체 콜백 옵션:
전용 함수를 사용하는 것 외에도 usort는 두 번째 인수로 모든 콜백을 허용합니다. 다음은 몇 가지 대안입니다:
usort($your_data, function($a, $b) { return strcmp($a->name, $b->name); });
usort($your_data, array($this, "cmp")); // where "cmp" is a method in the class
usort($your_data, fn($a, $b) => strcmp($a->name, $b->name));
숫자 비교 값:
숫자 속성을 기준으로 개체를 주문할 때 다음 비교 함수를 고려하세요.
fn($a, $b) => $a->count - $b->count
또는 PHP 7에서는 간결한 비교를 위해 Spaceship 연산자를 사용할 수 있습니다.
fn($a, $b) => $a->count <=> $b->count
위 내용은 특정 속성을 기반으로 PHP에서 개체 배열을 정렬하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!