현재 위치: > 최신 기사 목록> 재사용 가능성을 향상시키기 위해 사용자 정의 함수 캡슐화 array_count_values ​​()를 만듭니다

재사용 가능성을 향상시키기 위해 사용자 정의 함수 캡슐화 array_count_values ​​()를 만듭니다

M66 2025-06-07

개발 중에 배열 작업은 일반적인 작업 중 하나입니다. PHP는 배열을 조작하기위한 많은 내장 함수를 제공하며, 그중에는 array_count_values ​​()가 매우 실용적인 기능입니다. 그 기능은 배열에서 모든 값의 발생 수를 계산하고 결과를 연관 배열로 반환하는 것입니다. 그러나 때로는이 작업을 사용자 지정 기능으로 캡슐화하여 프로젝트에서 재사용하고 개발 프로세스를 단순화하기를 원합니다.

이 기사에서는 코드 재사용 성을 개선하고 코드 단순성 및 유지 관리 가능성을 향상시켜 사용자 지정 기능을 만들어 Array_Count_Values ​​()를 캡슐화하는 방법을 보여줍니다.

1. array_count_values에 대한 기본 소개 ()

Array_Count_Values ​​() 는 배열에서 모든 값의 발생 수를 계산할 수있는 PHP의 내장 함수입니다. 키가 배열에 나타나는 값이고 값은 해당 값의 발생 수입니다.

샘플 코드 :

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$count = array_count_values($array);
print_r($count);

출력 결과 :

 Array
(
    [apple] => 3
    [banana] => 2
    [orange] => 1
)

위의 예에서 array_count_values ​​()가 배열 요소의 빈도를 쉽게 계산할 수 있음을 알 수 있습니다.

2. 사용자 정의 함수 생성 acapsulation array_count_values ​​()

Array_Count_Values ​​() 는 매우 편리한 내장 기능이지만보다 다재다능하고 확장 가능한 사용자 정의 기능을 만들기 위해이를 추가로 캡슐화 할 수 있습니다. 이렇게하면 필요할 때 재사용하고 기능 논리를 중앙에서 관리 할 수 ​​있습니다.

맞춤형 기능 설계 :

인수로 배열을 가져 오는 사용자 정의 함수 countValues를 작성하고, 배열에서 각 값의 발생을 계산하기 위해 array_count_values ​​()를 호출하고 결과를 반환합니다.

 /**
 * 통계 배열에서 각 값의 발생 수
 *
 * @param array $inputArray 입력 배열
 * @return array 연관성 통계 결과를 반환합니다
 */
function countValues(array $inputArray): array {
    // 사용 array_count_values 계산하십시오
    return array_count_values($inputArray);
}

샘플 코드 :

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$result = countValues($array);
print_r($result);

출력 결과 :

 Array
(
    [apple] => 3
    [banana] => 2
    [orange] => 1
)

캡슐화를 통해이 코드를보다 명확하게 관리하고 재사용 할 수 있습니다. 또한 미래 에이 논리를 확장 해야하는 경우 (예 : 사례 감도 제어 또는 특정 특정 값을 필터링하는 등) CountValues ​​() 함수 만 수정하면됩니다.

3. 코드 재사용 성을 향상시키고 개발 프로세스를 단순화하십시오

3.1 코드 재사용

함수 캡슐화의 가장 큰 장점은 코드의 재사용 성을 향상 시킨다는 것입니다. 프로젝트에서 유사한 통계를 수행 해야하는 곳에 관계없이 CountValues ​​() 함수를 호출하면 매번 Array_Count_Values ​​() Call Code를 작성할 필요가 없습니다. 이런 식으로 코드는 모듈화되고 관리하기 쉽습니다.

3.2 개발 단순화

개발 중에, 우리는 종종 비슷한 작업을 겪습니다. 배열에서 특정 값의 발생 수를 계산합니다. array_count_values ​​()를 캡슐화하면 매번 기본 구현 세부 정보에주의를 기울이지 않고 개발 중에 CountValues ​​()를 직접 호출 할 수 있습니다. 이는 개발 효율성을 향상시킬뿐만 아니라 코드를 더 읽기 쉽게 만듭니다.

3.3 확장 및 유지 관리

캡슐화 된 함수에 대한 새로운 요구 사항이나 수정이있는 경우 한 장소 (예 : CountValues ​​() 함수 자체) 만 수정하면됩니다. 이를 통해 코드를 더 쉽게 유지 관리 할 수 ​​있으며 귀하의 요구에 따라 유연하게 조정할 수 있습니다. 예를 들어, 통계 또는 필터 값 중 특정 값을 무시하려면 캡슐화 된 기능을 쉽게 확장 할 수 있습니다.

4. 코드 샘플 확장 : 필터링 기능 추가

캡슐화의 확장 성을 더 잘 보여 주려면 값을 계산할 때 특정 값을 필터링하려고한다고 가정하십시오. countValues ​​() 함수를 수정하고 선택적 필터링 매개 변수를 추가 할 수 있습니다.

수정 된 countValues ​​() 함수 :

 /**
 * 통계 배열에서 각 값의 발생 수,지정된 값을 필터링합니다
 *
 * @param array $inputArray 입력 배열
 * @param array $excludeValues 제외 해야하는 값
 * @return array 연관성 통계 결과를 반환합니다
 */
function countValues(array $inputArray, array $excludeValues = []): array {
    // 불필요한 값을 필터링하십시오
    $filteredArray = array_diff($inputArray, $excludeValues);
    
    // 사용 array_count_values 계산하십시오
    return array_count_values($filteredArray);
}

샘플 코드 :

 $array = ["apple", "banana", "apple", "orange", "banana", "apple"];
$exclude = ["banana"]; // 필터링 'banana'
$result = countValues($array, $exclude);
print_r($result);

출력 결과 :

 Array
(
    [apple] => 3
    [orange] => 1
)

확장을 통해 호출 할 때 특정 값을 선택적으로 배제하여 기능을보다 유연하고 실용적으로 만들 수 있습니다.

5. 결론

사용자 정의 함수 acapsulation array_count_values ​​()를 만들어보다 효율적이고 간결하며 유지 관리 가능한 코드를 달성 할 수 있습니다. 캡슐화는 코드의 재사용 성을 향상시킬뿐만 아니라 개발 프로세스를 단순화하고 코드 로직을 더 명확하게 만듭니다. 기본 통계 함수에 있든 더 많은 기능을 확장 해야하는 경우 캡슐화 된 기능을 유연하게 응답하고 개발 효율성을 향상시킬 수 있습니다.

이 기사가 내장 기능을 캡슐화하여 개발 프로세스를 단순화하는 방법을 이해하고 코드의 유지 관리 및 재사용 성을 효과적으로 향상시킬 수 있기를 바랍니다.