답변: PHP에서는 uasort() 함수를 사용하여 원래 키 이름을 유지하면서 사용자 정의 비교 함수에 따라 배열의 객체를 정렬합니다. 자세한 설명: 구문: uasort($array, $value_compare_func) 비교 함수 규칙: 두 개의 배열 요소를 매개변수로 받아들이고 첫 번째 매개변수가 두 번째 매개변수보다 작으면 -1을 반환합니다. 두 매개변수가 같으면 1을 반환합니다. 첫 번째 매개변수가 두 번째 매개변수보다 큽니다. 실제 사례: 학생 객체를 나타내기 위해 Student 클래스를 정의하여 원래 키 이름을 유지하면서 학생의 나이에 따라 $students 배열을 정렬합니다.
PHP를 사용하여 $students 배열 정렬 객체 정렬
PHP에서는 uasort()
함수를 사용하여 원래 키 이름을 유지하면서 배열의 객체를 정렬할 수 있습니다. 이 함수는 사용자가 제공한 비교 함수를 사용하여 배열 요소를 오름차순 또는 내림차순으로 정렬합니다. uasort()
函数对数组中的对象进行排序,同时保留原始键名。该函数使用用户提供的比较函数,将数组元素按升序或降序排序。
uasort ( array &$array, callable $value_compare_func ) : bool
其中:
$array
是要排序的数组,传递引用以便直接修改$value_compare_func
uasort (array &$array, callable $value_compare_func): bool
여기서:
$array
는 정렬할 배열입니다. 참조 그래서 직접 수정 $value_compare_func
은 두 값을 매개 변수로 받아들이고 비교 결과를 오름차순 또는 내림차순으로 반환하는 사용자 제공 비교 함수입니다.
<?php class Student { public $name; public $age; public function __construct($name, $age) { $this->name = $name; $this->age = $age; } } $students = [ "John Doe" => new Student("John Doe", 25), "Jane Smith" => new Student("Jane Smith", 22), "Peter Parker" => new Student("Peter Parker", 28) ]; uasort($students, function ($a, $b) { return $a->age <=> $b->age; }); print_r($students);
Array ( [Jane Smith] => Student Object ( [name] => Jane Smith [age] => 22 ) [John Doe] => Student Object ( [name] => John Doe [age] => 25 ) [Peter Parker] => Student Object ( [name] => Peter Parker [age] => 28 ) )
위 내용은 원래 키 이름을 유지하면서 PHP를 사용하여 배열의 객체 정렬의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!