사용자 정의 함수(1)

· 11년 전 · 1106

사용자 정의 함수(User-defined function)에 대해서 알아보겠습니다.

함수는 제가 앞에서 전역 변수, 정적 변수에 대해서 설명할 때 조금 소개되었죠.

함수는 특정한 작업을 수행하는 코드를 묶어서 프로그램에서 필요할 때마다 호출해서 사용하는 것으로, 함수를 사용하면 좀 더 효율적인 코딩을 할 수 있습니다.

그럼, 예제 코드를 보면서 가장 간단한 함수부터 하나씩 살펴보겠습니다.


<?
function Output() {
  echo("Hello World");
}

Output();
?>


위 예제는 Output() 함수를 호출하여 "Hello World" 라는 문자열을 출력하는 코드입니다.

위 예제를 통해 알 수 있는 것처럼, 함수를 사용하기 위해서는 함수를 선언하는 부분과 함수를 호출하는 부분을 기술해 주어야 합니다.

함수를 선언하기 위해서는 먼저 function 명령어를 써주고, 그 다음에 함수명과 괄호()를 써주면 됩니다.

그리고 함수의 몸체를 나타내는 중괄호를{}를 써주고, 그 중괄호{}안에 수행하고자 하는 코드를 넣어주면 됩니다.

다음으로, 그 선언된 함수를 호출하려면 그냥 함수명과 괄호()를 써주면 됩니다.

참고로, PHP4.x 이상 버전에서는 함수를 호출하는 부분이 함수를 선언하는 부분보다 먼저와도 상관없습니다.

이제, 다음 예제 코드를 볼까요.


<?
function Output($string) {
  echo("$string");
}

Output("Hello World");
?>


바로 위 예제가 처음 예제와 다른 부분이 있죠?

두 번째 예제는 함수 선언부의 함수명 다음에 오는 괄호() 안에 변수가 들어가 있죠. 그 변수를 인자(argument)라고 부릅니다.

그리고 함수 호출부의 함수명 다음에 오는 괄호() 안에 문자열이 들어있죠. 바로 그 문자열이 Output() 함수를 호출할 때 Output() 함수 선언부의 $string 변수에 할당되게 됩니다.

그래서, Output() 함수의 몸체에 기술된 echo("$string"); 명령어가 실행될 때 $string 변수에 저장된 "Hello World" 문자열이 출력되게 됩니다.

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 2,438
11년 전 조회 1,140
11년 전 조회 1,282
11년 전 조회 984
11년 전 조회 1,944
11년 전 조회 1,821
11년 전 조회 1,310
11년 전 조회 1,200
11년 전 조회 964
11년 전 조회 1,347
11년 전 조회 1,799
11년 전 조회 858
11년 전 조회 1,065
11년 전 조회 1,149
11년 전 조회 1,166
11년 전 조회 1,373
11년 전 조회 2,879
11년 전 조회 2,552
11년 전 조회 2,014
11년 전 조회 1,668
11년 전 조회 1,623
11년 전 조회 2,609
11년 전 조회 1,855
11년 전 조회 3,047
11년 전 조회 3,873
11년 전 조회 3,992
11년 전 조회 4,059
11년 전 조회 4,163
11년 전 조회 2,646
11년 전 조회 1.8만
11년 전 조회 1,613
11년 전 조회 1,357
11년 전 조회 1,300
11년 전 조회 1,117
11년 전 조회 1,264
11년 전 조회 1,096
11년 전 조회 910
11년 전 조회 1,312
11년 전 조회 1,063
11년 전 조회 967
11년 전 조회 1,301
11년 전 조회 1,196
11년 전 조회 963
11년 전 조회 1,133
11년 전 조회 1,144
11년 전 조회 1,148
11년 전 조회 1,248
11년 전 조회 872
11년 전 조회 926
11년 전 조회 1,107
11년 전 조회 972
11년 전 조회 1,014
11년 전 조회 948
11년 전 조회 891
11년 전 조회 966
11년 전 조회 1,584
11년 전 조회 914
11년 전 조회 1,224
11년 전 조회 1,111
11년 전 조회 864
11년 전 조회 880
11년 전 조회 972
11년 전 조회 946
11년 전 조회 1,487
11년 전 조회 4,366
11년 전 조회 1,460
11년 전 조회 1,185
11년 전 조회 1,640
11년 전 조회 7,772
11년 전 조회 1,378
11년 전 조회 2,589
11년 전 조회 1,406
11년 전 조회 1,442
11년 전 조회 1,746
11년 전 조회 1,232
11년 전 조회 1,237
11년 전 조회 1,235
11년 전 조회 1,259
11년 전 조회 1,894
11년 전 조회 1,273
11년 전 조회 1,430
11년 전 조회 1,223
11년 전 조회 4,900
11년 전 조회 935
11년 전 조회 1,314
11년 전 조회 1,710
11년 전 조회 1,258
11년 전 조회 5,531
11년 전 조회 3,660
11년 전 조회 5,198
11년 전 조회 1,075
11년 전 조회 1,417
11년 전 조회 1,622
11년 전 조회 1,507
11년 전 조회 1,443
11년 전 조회 909
11년 전 조회 3,599
11년 전 조회 3,140
11년 전 조회 2,480
11년 전 조회 1,683