다차원 배열 정렬 기술: 1차원 정렬: sort() 함수 사용 다차원 정렬: 콜백 함수 usort() 사용 중첩 정렬: 여러 콜백 함수를 사용하여 지정된 순서로 다양한 필드를 정렬 실제 사례: 정렬 성 및 생년월일별 고객 목록 정렬
배열 정렬은 PHP의 기본이면서도 강력한 작업입니다. 다차원 배열의 경우 상황이 더욱 복잡해집니다. 하지만 올바른 기술을 사용하면 쉽고 효율적으로 정렬할 수 있습니다.
단일 차원 정렬의 경우 sort()
함수를 사용할 수 있습니다:
$array = ['a', 'c', 'b']; sort($array); print_r($array); // ['a', 'b', 'c']
다차원 정렬 콜백 함수를 사용해야 합니다:
$array = [ ['name' => 'Alice', 'age' => 30], ['name' => 'Bob', 'age' => 25], ['name' => 'Charlie', 'age' => 35], ]; usort($array, function ($a, $b) { return $a['age'] <=> $b['age']; }); print_r($array); // [ ['name' => 'Bob', 'age' => 25], ['name' => 'Alice', 'age' => 30], ['name' => 'Charlie', 'age' => 35] ]
N 예상 정렬 다중 콜백 기능 사용:
$array = [ ['name' => 'Alice', 'age' => 30], ['name' => 'Bob', 'age' => 25, 'city' => 'New York'], ['name' => 'Charlie', 'age' => 35, 'city' => 'London'], ]; usort($array, function ($a, $b) { if ($a['age'] == $b['age']) { return strcmp($a['city'], $b['city']); } return $a['age'] <=> $b['age']; }); print_r($array); // [ ['name' => 'Bob', 'age' => 25, 'city' => 'New York'], ['name' => 'Alice', 'age' => 30], ['name' => 'Charlie', 'age' => 35, 'city' => 'London'] ]
고객 목록 정렬: 고객의 성 및 생년월일에 따라 고객 목록을 정렬합니다.
$customers = [ ['name' => 'John Doe', 'birthdate' => '1980-01-01'], ['name' => 'Jane Doe', 'birthdate' => '1985-03-08'], ['name' => 'Tom Smith', 'birthdate' => '1975-12-15'], ]; usort($customers, function ($a, $b) { if ($a['name'] == $b['name']) { return strtotime($a['birthdate']) <=> strtotime($b['birthdate']); } return strcmp($a['name'], $b['name']); });
이 팁을 사용하면 복잡성에 관계없이 프로젝트의 PHP 다차원 배열을 효율적으로 쉽게 정렬할 수 있습니다.
위 내용은 PHP 배열의 다차원 정렬을 위한 팁: 초보자부터 숙련자까지의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!