함수를 호출할 때 함수에 매개변수를 전달해야 합니다. 함수에 전달되는 매개변수를 실제 매개변수라고 하며, 함수에서 정의하는 매개변수를 형식 매개변수라고 합니다. 함수에 매개변수를 전달하는 방법에는 값 전달, 참조 전달, 기본 매개변수 및 가변 길이 매개변수의 네 가지 방법이 있습니다.
값으로 매개변수 전달
기본 매개변수 전달 방법으로, 매개변수를 전달할 때 기본적으로 이 방법을 사용합니다. 형식 매개변수의 작동은 실제 매개변수의 값에 영향을 미치지 않습니다. 따라서 함수가 실제 매개변수의 값을 수정하는 것을 원하지 않으면 값으로 전달할 수 있습니다.
<?php function test($a){ echo ++$a; } $i=10; test($i); echo '<br/>'.$i; ?>
실행 결과:
11 10
실행 결과를 보면 함수 내부에서는 값이 변경되지만 함수 외부에서는 변경이 없는 것을 볼 수 있습니다. 따라서 값으로 함수를 전달하는 것은 단지 변수의 복사본을 전달하는 것이라고 말할 수 있습니다. 따라서 함수가 함수의 외부 매개변수에 대해 작동할 수 있도록 하려면 참조 전달을 사용해야 합니다.
참조로 매개변수 전달
참조로 매개변수 전달, 형식 매개변수에 대한 작업은 실제 매개변수에 영향을 미칩니다. 이런 방식으로 우리는 함수 내부의 매개변수 자체에 대해 작업을 수행합니다.
<?php function test(&$a){ echo ++$a; } $i=10; test($i); echo '<br/>'.$i; ?>
실행 결과는 다음과 같습니다.
11 11
함수의 기본 매개변수
형식 매개변수에 기본값을 설정할 수 있으며 값을 직접 할당하여 설정할 수 있습니다
참고:반드시 왼쪽에 값을 할당하려면 오른쪽에서 왼쪽으로 할당해야 하며, 오른쪽에 값을 할당하려면 오른쪽에 값을 할당하지 않고 왼쪽에 할당한 값은 계산되지 않습니다
<?php function test($a=10,$b=20){ echo $a+$b; } test(20,25); ?>
The 연산 결과는 45입니다. $a에만 값을 할당하고 b 할당을 호출할 때 $를 할당하면 다음과 같은 결과가 표시됩니다.
가변 길이 매개 변수 목록
PHP 5.6 이상 버전에서는, 함수의 형식 매개변수는... 함수가 다양한 수의 매개변수를 허용할 수 있음을 나타내기 위해 사용할 수 있으며, 가변 매개변수는 함수에 배열로 전달됩니다.
<?php function test(...$arr){ print_r($arr); } echo '<pre class="brush:php;toolbar:false">'; test(1, 2, 3, 4); ?>
그의 달리기 결과는 다음과 같습니다.
권장 학습: "PHP Video Tutorial"
위 내용은 PHP 함수 매개변수의 여러 전송 방법에 대한 자세한 그래픽 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!