";"/> ";">

>백엔드 개발 >PHP 튜토리얼 >PHP 사용자 정의 함수의 매개변수 기본값 사용법에 대한 자세한 설명

PHP 사용자 정의 함수의 매개변수 기본값 사용법에 대한 자세한 설명

伊谢尔伦
伊谢尔伦원래의
2017-06-26 10:16:286458검색

모든 유효한 PHP 코드는 함수 내부에 나타날 수 있으며, 심지어 다른 함수 및 클래스 정의도 나타날 수 있습니다.

함수 이름은 PHP의 다른 식별자와 동일한 명명 규칙을 갖습니다. 유효한 함수 이름은 문자나 밑줄로 시작하고 그 뒤에 문자, 숫자 또는 밑줄이 옵니다.

정규 표현식으로 다음과 같이 표현할 수 있습니다: [a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*.

php사용자 정의 함수매개변수를 수락할 때 기본값을 직접 지정할 수 있습니다. ​

function TestStr($str)
{
return $str."是一个字符串";
}
echo TestStr("abcdef")."</br>";

위의 사용자 정의 함수는 하나의 매개변수를 수락합니다. TestStr()을 호출하면 매개변수가 제공되지 않으면 어떻게 되나요?

직접 오류: 경고: TestStr()에 대한 인수 1이 누락되었습니다

그래서 개발 과정에서 위의 오류를 방지하기 위해 일반적으로 함수를 사용자 정의할 때 다음과 같이 매개 변수에 기본값을 할당합니다.

function TestStr2($str="kkkkk")
{
return $str."是一个字符串";
}

이제 TestStr2를 호출합니다. () 오류 없이 직접 출력 kkkkk는 문자열입니다. 물론 매개변수를 전달한 후에는 기본 매개변수가 대체됩니다.

세 번째 경우:

매개변수가 2개 이상인 경우, 그렇지 않은 경우 모든 기본값이 동일합니다. 다음은

function TestStr3($str =&#39;mmmmm&#39; ,$para)
{
return $str."和".$para."都是字符串";
}

오류의 예입니다. 위의 내용은 기본값을 지정하는 오른쪽의 규칙을 따르지 않지만, 가장 왼쪽은 기본값을 제공합니다.

함수를 호출할 때 TestStr3("첫 번째 매개변수"); 우리가 기대하는 것은 첫 번째 매개변수가 기본값으로 대체되고 두 번째 매개변수가 들어오는 매개변수로 대체된다는 것입니다. 그렇지 않습니다. 매개변수 교체 순서는 왼쪽에서 오른쪽입니다. 따라서 두 번째 매개변수에는 값이 전달되지 않을 뿐만 아니라 기본값도 없으므로 오류가 직접 보고됩니다.

The 올바른 기본값은 다음과 같아야 합니다

function TestStr3($str,$para=&#39;mmmmm&#39;)
{
return $str."和".$para."都是字符串";
}

그러면 출력은 다음과 같습니다.

첫 번째 매개변수와 mmmmm은 모두 문자열입니다

위 내용은 PHP 사용자 정의 함수의 매개변수 기본값 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.