krsort ()는 키 이름별로 배열을 역 순서로 정렬하기위한 PHP의 내장 기능입니다. 키 이름의 알파벳 또는 숫자 순서에 따라 배열을 큰에서 작은 것까지 정렬하고 키 이름과 키 값 사이의 연관성을 유지합니다.
문법:
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
$ 배열 : 정렬해야하며 통과 할 때 참조 해야하는 배열입니다.
$ SORT_FLAGS : 정렬 동작을위한 플래그 (선택 사항). 일반적으로 사용되는 것은 sort_regular , sort_numeric , sort_string 등을 포함합니다.
krsort ()가 다차원 배열을 사용하는 경우 첫 번째 레이어 키 이름을 역 순서로 만 정렬하면 내부 하위 배열의 순서가 영향을받지 않습니다. 서브 어레이를 역순으로 정렬하려면 재귀 적 방법을 결합하여이를 달성해야합니다.
다음 예제는 krsort ()를 사용하여 다차원 배열의 첫 번째 레이어 키 이름을 역 순서로 정렬하는 방법을 보여줍니다.
<?php
// 다차원 배열을 정의하십시오
$multiArray = [
"b" => ["name" => "장 산", "age" => 25],
"a" => ["name" => "Li Si", "age" => 30],
"c" => ["name" => "왕 우", "age" => 22],
];
// 사용krsort첫 번째 레이어 키를 역 순서로 정렬합니다
krsort($multiArray);
// 출력 정렬 배열
echo "<pre>";
print_r($multiArray);
echo "</pre>";
?>
출력 결과 :
Array
(
[c] => Array
(
[name] => 왕 우
[age] => 22
)
[b] => Array
(
[name] => 장 산
[age] => 25
)
[a] => Array
(
[name] => Li Si
[age] => 30
)
)
출력에서 배열의 주요 이름이 알파벳 순서 C> B> a의 역 순서로 성공적으로 배열되어 있음을 알 수 있습니다.
다차원 배열이 복잡한 구조가 있고 서브 어레이를 역 순서로 정렬 해야하는 경우 재귀 함수를 사용할 수 있습니다.
<?php
function recursiveKrsort(&$array) {
if (!is_array($array)) {
return;
}
krsort($array);
foreach ($array as &$value) {
if (is_array($value)) {
recursiveKrsort($value);
}
}
}
// 다차원 배열 예
$multiArray = [
"b" => [
"z" => 1,
"a" => 2
],
"a" => [
"c" => 3,
"b" => 4
],
];
// 재귀 역 정렬
recursiveKrsort($multiArray);
echo "<pre>";
print_r($multiArray);
echo "</pre>";
?>
결과:
Array
(
[b] => Array
(
[z] => 1
[a] => 2
)
[a] => Array
(
[c] => 3
[b] => 4
)
)
첫 번째 레이어와 서브 어레이의 주요 이름은 역 순서로 정렬됩니다.
krsort ()는 키 이름에 따라 역 순서로 정렬하는 데 적합하며 기본적으로 첫 번째 레이어에만 유효합니다.
다차원 배열을 깊이 정렬 할 때는 재귀와 함께 krsort ()를 호출하는 것이 좋습니다.
krsort ()를 사용하여 이해하고 유연하게 유연하게 사용하면 복잡한 배열을 다룰 때 노력의 절반으로 결과를 두 배로 늘릴 수 있습니다.
이 기사의 예를 통해 Krsort ()를 사용하여 PHP 다차원 배열을 역 순서로 정렬하는 방법을 마스터했다고 생각합니다. 실제로 적용 할 수 있습니다.