PHP 다중배열 정열 How to Sort Multi-dimensional array
배열 요소의 순서는 foreach() 루프를 사용하여 키별로 정렬할 수 있지만 프로세스가 복잡하고 실행 시간이 길다. PHP array_multisort() 함수는 다차원 배열을 키 값으로 정렬하는 쉬운 방법을 제공합니다. 이 예제 코드 스니펫에서는 PHP에서 키를 기준으로 다차원 배열 요소의 순서를 정렬하는 방법을 보여줍니다.
다음 코드는 PHP에서 키로 다차원 배열을 정렬하는 데 도움이 됩니다.
배열의 특정 키 열에서 값을 가져오려면 PHP array_column() 함수를 사용하십시오.
키 값으로 배열을 정렬하려면 PHP array_multisort() 함수를 사용하십시오.
이 예제 코드 스니펫에서 $records 배열을 오름차순으로 정렬하기 위해 first_name 키가 지정되었습니다.
$records = array( array( 'first_name' => 'John', 'last_name' => 'Doe', 'email' => 'john.doe@gmail.com' ), array( 'first_name' => 'Gary', 'last_name' => 'Riley', 'email' => 'gary@hotmail.com' ), array( 'first_name' => 'Edward', 'last_name' => 'Siu', 'email' => 'siu.edward@gmail.com' ), array( 'first_name' => 'Betty', 'last_name' => 'Simons', 'email' => 'simons@example.com' ) ); $key_values = array_column($records, 'first_name'); array_multisort($key_values, SORT_ASC, $records);
위를 소트하면 아래와 같이 나옵니다.
Array ( [0] => Array ( [first_name] => Betty [last_name] => Simons [email] => simons@example.com ) [1] => Array ( [first_name] => Edward [last_name] => Siu [email] => siu.edward@gmail.com ) [2] => Array ( [first_name] => Gary [last_name] => Riley [email] => gary@hotmail.com ) [3] => Array ( [first_name] => John [last_name] => Doe [email] => john.doe@gmail.com ) )