PHP 함수에서 기본 인수 사용
PHP에서 함수 매개변수에 기본값을 할당할 때 해당 제한 사항을 이해하는 것이 중요합니다. 다음과 같은 매개변수가 있는 함수를 생각해 보세요.
<code class="php">function foo($blah, $x = "some value", $y = "some other value")</code>
$x에 대한 기본 인수를 사용하고 싶지만 $y에 대해 다른 값을 지정하려면 어떻게 해야 할까요?
$x에 null을 전달하면 그렇지 않습니다. PHP는 이를 의도적인 값 생략으로 해석하기 때문에 작동하지 않습니다. 이 문제를 해결하려면 다음 접근 방식을 고려하세요.
<code class="php">function foo($blah, $x = null, $y = null) { if (null === $x) { $x = "some value"; } if (null === $y) { $y = "some other value"; } // Code here! }</code>
이 수정을 통해 foo('blah', null, 'test')를 호출하여 $x에 대한 기본값을 사용하고 다음에 대한 사용자 지정 값을 지정할 수 있습니다. $y.
PHP의 기본 매개변수 메커니즘이 함수의 마지막 인수에 적용된다는 점에 유의하는 것이 중요합니다. 원하는 인수가 마지막 인수가 아닌 경우 기본 인수를 생략할 수 없습니다.
다양한 매개변수 개수와 유형을 처리하려는 상황에서는 보다 유연한 접근 방식을 고려할 수 있습니다.
<code class="php">public function __construct($params = null) { if ($params instanceof SOMETHING) { // Single parameter of type SOMETHING } elseif (is_string($params)) { // Single string argument } elseif (is_array($params)) { // Array of properties } elseif (func_num_args() == 3) { // 3 parameters passed } elseif (func_num_args() == 5) { // 5 parameters passed } else { throw new \InvalidArgumentException("Could not figure out parameters!"); } }</code>
이 방법은 다양한 입력 시나리오를 처리하는 데 더 큰 유연성을 제공합니다.
위 내용은 일부만 재정의하려는 경우 PHP 함수에서 기본 인수를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!