티스토리 뷰

PHP

PHP 인수가 있는 함수

블로그 강승 2021. 4. 5. 23:46

PHP에서 인수가 있는 함수를 선언할때, 인수를 넣지 않으면
PHP 엔진에서 경고를 보낸다.

 

인수의 기본값 설정방법

이런 경고가 발생하지 않게 하려면
함수를 정의할 때 인수에 기본값을 지정한다.

기본값이 지정된 인수는 선택적이다.
함수를 호출할 때 인수를 제공하면
함수는 인수값을 사용하고,
인수를 제공하지 않으면 기본값을 사용한다.
기본값은 인수명 뒤에 넣는다.

function page_header3($color = 'cc3399') {
	print '<html><head><title> 저의 홈페이지에 오신 것을 환영합니다.</title></head>';
    print '<body bgcolor="#" . $color . '">';
}

위의 코드는 page_header3() 을 호출했을때,
인수의 기본값인 'cc3399'가 $color 변수에 사용된다.
인수의 기본값은 13, dd1234, kangsung 처럼
값 자체를 사용해야하며 변수를 사용할 수 없다.

 

인수가 여러개인 경우

인수가 여러개인 함수를 정의하려면
함수를 선언할 때 인수들을 쉼표로 구분해서 넣는다.

function page_header4($color, $title) {
	print '<html><head><title>' . $title . '에 오신 것을 환영합니다.</title></head>';
    print '<body bgcolor="#' . $color . '">';
}

 

인수가 여러개인 경우, 기본값 설정 방법

선택적 인수는 필수인수의 뒤에 나와야한다.

// 선택적 인수가 하나일 때. 마지막 인수여야 한다.
function page_header5($color, $title, $header = '어서오세요') {
	print '<html><head><title>' . $title . '에 오신 것을 환영합니다.</title></head>';
    print '<body bgcolor='#' . $color . '">';
    print "<h1>$header</h1>";
}
// 올바른 호출 방법
page_header5('66cc99','저의 멋진 홈페이지'); // $header의 기본값을 사용한다.
page_header5('66cc99','저의 멋진 홈페이지','홈페이지 최고에요!'); // 기본값을 사용하지 않는다.

// 선택적 인수가 두 개일 때. 마지막 두 인수에 지정해야 한다.
function page_header6($color, $title = '저의 홈페이지', $header = '어서오세요') {
	print '<html><head><tilte>' . $title . '에 오신 것을 환영합니다.</title></head>';
    print '<body bgcolor="#" . $color . '">';
    print "<h1>$header</h1>";
}

// 올바른 호출 방법
page_header6('66cc99'); // $title과 $header의 기본값을 사용한다.
page_header6('66cc99','저의 멋진 홈페이지 '); // $header의 기본값을 사용한다.
page_header6('66cc99','저의 멋진 홈페이지 ','홈페이지 최고에요!'); // 기본값을 사용하지 않는다.

// 인수가 모두 선택적일 때
function page_header7($color = '336699' , $title = '저의 홈페이지', $header = '어서오세요') {
	print '<html><head><title>' . $title . '에 오신 것을 환영합니다.</title></head>';
    print '<body bgcolor="#' . $color . '">';
    print "<h1>$header</h1>";
}

// 올바른 호출 방법
page_header7(); // 모두 기본값을 사용한다.
page_header7('66cc99'); // $title과 $header의 기본값을 사용한다.
page_header7('66cc99','저의 멋진 홈페이지'); // $header의 기본값을 사용한다.
page_header7('66cc99','저의 멋진 홈페이지','홈피이지 최고에요!'); // 기본값을 사용하지 않는다.

 

 

인수로 쓰인 변수

함수 안으로 인수로 쓰인 변수가
함수 안에서 값이 변해도,

함수 밖에 있던 변수는 값이 변하지 않는다.

function countdown($top) {
	while ($top > 0) {
    	print "$top..";
        $top--;
    }
    print "펑!\n";
}

$counter = 5;
countdown($counter);
print "counter의 값: $counter";

/* 출력 결과
5..4..3..2..1..펑!
counter의 값: 5

'PHP' 카테고리의 다른 글

PHP 함수 내부에서 전역변수에 접근  (0) 2021.04.06
PHP 여러값을 반환하는 함수  (0) 2021.04.06
PHP 함수의 정의는 함수를 호출한 뒤에 나와도 상관없음  (0) 2021.04.05
PHP 다차원 배열  (0) 2021.04.04
PHP ksort()  (0) 2021.04.04
댓글