php에서 array_count_values ()는 배열에서 각 요소의 발생을 계산하고 키가 배열 요소이고 값이 배열에서 요소의 발생 횟수 인 경우 연관 배열을 반환하는 매우 유용한 기능입니다. 그러나 array_count_values () 에 의해 반환 된 결과는 기본적으로 변하지 않습니다. 현재 Arsort () 함수를 사용하여 결과를 내림차순 순서로 배열하여 가장 빈번한 요소를 볼 수 있습니다.
이 기사는 Array_Count_Values () 및 Array ()를 사용하여 데이터를 처리하고 높은 주파수에서 저주파에서 결과를 정렬하는 방법을 자세히 설명합니다.
Array_Count_Values () 함수는 배열에서 각 요소의 발생 수를 계산하는 데 사용됩니다. 키가 배열의 값이고 값은 각 값이 나타나는 횟수입니다.
<?php
// 배열을 정의하십시오
$array = ["apple", "banana", "apple", "orange", "banana", "banana"];
// 사용 array_count_values() 통계 요소 주파수
$result = array_count_values($array);
// 출력 결과
print_r($result);
?>
Array
(
[apple] => 2
[banana] => 3
[orange] => 1
)
이 예에서는 바나나가 3 번 나타나고 Apple이 2 번 나타나고 Orange가 1 번만 나타납니다.
Array_Count_Values () 에 의해 반환 된 배열은 정렬되지 않으므로 Arsort ()를 사용하여 배열을 정렬하고 주파수를 하강 순서로 배열하여 가장 높은 주파수를 가진 요소가 먼저 순위를 매기도록해야합니다. 이런 식으로, 우리는 어레이에서 어떤 요소가 가장 많이 나타나는지 쉽게 알 수 있습니다.
Arsort () 함수는 키 가치 연관성을 유지하면서 배열을 값별로 내림차순으로 정렬합니다.
<?php
// 배열을 정의하십시오
$array = ["apple", "banana", "apple", "orange", "banana", "banana"];
// 통계 요소 주파수
$result = array_count_values($array);
// 사용 arsort() 하강 주파수 순서를 정렬하십시오
arsort($result);
// 출력 정렬 결과
print_r($result);
?>
Array
(
[banana] => 3
[apple] => 2
[orange] => 1
)
정렬 된 배열에서 바나나는 가장 많이 나타나기 때문에 맨 위에 있습니다.
때때로 우리는 문자열 배열에서 각 문자의 발생 빈도를 계산하고 내림차순 주파수 순서로 배열해야합니다. 실질적인 예는 다음과 같습니다.
<?php
// 문자열 배열을 정의하십시오
$text = "php is awesome, php is powerful";
// 사용 str_split() 문자열을 문자 배열로 변환하십시오
$charArray = str_split(str_replace(" ", "", $text)); // 공간을 제거하십시오
// 통계 문자 주파수
$charCount = array_count_values($charArray);
// 하강 주파수 순서를 정렬하십시오
arsort($charCount);
// 출력 정렬 결과
print_r($charCount);
?>
Array
(
[p] => 4
[h] => 2
[i] => 2
[s] => 2
[e] => 2
[o] => 2
[m] => 1
[a] => 1
[w] => 1
[,] => 1
[f] => 1
[u] => 1
)
이 예에서는 문자열에서 각 문자 발생 빈도를 계산하고 Arsort ()를 사용하여 문자를 내림차순으로 정렬합니다.
Array_Count_Values () 및 Array ()를 결합하여 배열의 요소 주파수를 매우 편리하게 계산하여 주파수별로 내림차순으로 배열 할 수 있습니다. 이 조합은 단어 주파수 통계, 문자 통계 등과 같은 배열의 요소 수를 빠르게 볼 수있는 시나리오에 특히 적합합니다.
이 기사 가이 두 기능을 사용하여 데이터를보다 효율적으로 처리하는 방법을 이해하는 데 도움이되기를 바랍니다. 다른 질문이 있으시면 계속 논의하십시오!