현재 위치: > 최신 기사 목록> PHP 함수 매개변수에 "..."를 추가하는 사용법에 대한 자세한 설명과 실제 예

PHP 함수 매개변수에 "..."를 추가하는 사용법에 대한 자세한 설명과 실제 예

M66 2025-10-15

PHP에서 매개변수 앞에 "..."를 추가하는 의미

PHP 개발에서는 무한한 수의 매개변수를 받기 위해 함수를 작성해야 하는 경우가 많습니다. 이 시나리오를 해결하기 위해 PHP는 가변 길이 인수 목록(Variable-length Argument List)을 구현하기 위해 매개 변수 앞에 점 세 개(...)를 추가하는 간결한 구문을 제공합니다. 이 기능을 사용하면 고정된 수의 매개변수 이름을 미리 정의하지 않고도 함수에서 다양한 수의 매개변수를 유연하게 처리할 수 있습니다.

가변 함수를 정의하려면 "..."을 사용하십시오.

다음은 "..."을 사용하여 원하는 수의 매개변수를 받을 수 있는 함수를 정의하는 방법을 보여주는 간단한 예입니다.

 function add(...$numbers) {
    $sum = 0;
    foreach ($numbers as $num) {
        $sum += $num;
    }
    return $sum;
}

// 시험 add() 기능
echo add(1, 2, 3, 4, 5); // 산출:15
echo add(10, 20, 30);   // 산출:60

위의 예에서 add() 함수는 "..."를 사용하여 변수 매개변수 목록 $numbers 를 선언합니다. PHP는 전달된 모든 인수를 배열로 자동으로 압축하므로 함수가 쉽게 반복하고 결과를 계산할 수 있습니다.

가변 인수를 처리하려면 func_get_args() 및 func_num_args()를 사용하십시오.

"..." 구문 외에도 PHP는 유사한 기능을 달성하기 위해 두 가지 기능을 제공합니다.

  • func_get_args() : 들어오는 모든 매개변수를 가져와서 배열로 반환합니다.
  • func_num_args() : 전달된 인수의 개수를 반환합니다.

아래 코드는 이 두 가지 기능을 사용하는 방법을 보여줍니다.

 function printArgs() {
    $numArgs = func_num_args();
    $args = func_get_args();

    echo "Number of arguments: {$numArgs}\n";

    foreach ($args as $index => $arg) {
        echo "Argument {$index}: {$arg}\n";
    }
}

// 시험 printArgs() 기능
printArgs('apple', 'banana', 'cherry', 'date');

위의 방법을 통해 들어오는 매개변수를 개수에 상관없이 동적으로 처리할 수 있고, 유연하게 대응할 수 있습니다. "..." 구문과 비교할 때 이 방법은 함수 매개변수 정의를 직접 수정할 수 없는 경우에 사용하기에 더 적합합니다.

요약

"..." 구문이나 func_get_args() 함수 시리즈를 사용하면 PHP 함수를 더욱 유연하고 다양하게 디자인할 수 있습니다. 도구 기능을 작성하거나 프레임워크의 기본 논리를 구현할 때 이러한 기능은 코드의 확장성과 유지 관리성을 효과적으로 향상시킬 수 있습니다.

개발자는 PHP의 가변 매개변수 특성을 이해하고 합리적으로 사용함으로써 보다 간결하고 효율적인 코드를 작성할 수 있으며 프로젝트 개발을 위한 보다 유연한 솔루션을 제공할 수 있습니다.