들어가기전 기본적인 배열 정렬들
sort() - 배열정렬. 1,2,3처럼 오르차순으로 정렬. (ASC)
rsort() - 배열을 역순으로 정렬, reverse의 약자 r. (DESC)
asort() - Associative Arrays([키 => 내용])을 내용 기준으로 오름차순으로 정렬합니다. (ASC)
ksort() - Associative 배열에서 asort가 내용을 기준으로 했다면 ksort는 키 값을 기준으로 정렬. (ASC)
arsort() - Associative 배열에서 내용 기준, 역순으로 정렬합니다. (DESC)
krsort() - Associative 배열에서 키 값 기준, 역순으로 정렬합니다. (DESC)
array_multisort()
다차원배열 정렬
시간 없는 개발자들을 위해 굵게 쓴 부분만 보면 됩니다~
다차원 배열에서 volume 먼저 정렬하고, 정렬 된 다음 edition 정렬
<?php
$data[] = array('volume' => 67, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 1);
$data[] = array('volume' => 85, 'edition' => 6);
$data[] = array('volume' => 98, 'edition' => 2);
$data[] = array('volume' => 86, 'edition' => 6);
$data[] = array('volume' => 67, 'edition' => 7);
?>
<?php
// Obtain a list of columns
foreach ($data as $key => $row) {
$volume[$key] = $row['volume'];
$edition[$key] = $row['edition'];
}
// as of PHP 5.5.0 you can use array_column() instead of the above code
$volume = array_column($data, 'volume');
$edition = array_column($data, 'edition');
// Sort the data with volume descending, edition ascending
// Add $data as the last parameter, to sort by the common key
array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);
?>
volume | edition
-------+--------
98 | 2
86 | 1
86 | 6
85 | 6
67 | 2
67 | 7
'php' 카테고리의 다른 글
php-fpm 슬로우로그 찍는법 (0) | 2021.01.05 |
---|---|
php break, return, exit 구분 (0) | 2020.09.03 |