사용자 정의 함수(1)

· 11년 전 · 2293

사용자 정의 함수(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년 전 조회 3,671
11년 전 조회 2,337
11년 전 조회 2,462
11년 전 조회 2,192
11년 전 조회 3,127
11년 전 조회 3,045
11년 전 조회 2,504
11년 전 조회 2,390
11년 전 조회 2,149
11년 전 조회 2,592
11년 전 조회 2,986
11년 전 조회 2,048
11년 전 조회 2,221
11년 전 조회 2,376
11년 전 조회 2,368
11년 전 조회 2,578
11년 전 조회 4,082
11년 전 조회 3,784
11년 전 조회 3,208
11년 전 조회 2,888
11년 전 조회 2,822
11년 전 조회 3,824
11년 전 조회 3,054
11년 전 조회 4,258
11년 전 조회 5,096
11년 전 조회 5,215
11년 전 조회 5,273
11년 전 조회 5,413
11년 전 조회 3,881
11년 전 조회 1.9만
11년 전 조회 2,832
11년 전 조회 2,560
11년 전 조회 2,565
11년 전 조회 2,339
11년 전 조회 2,498
11년 전 조회 2,347
11년 전 조회 2,124
11년 전 조회 2,570
11년 전 조회 2,268
11년 전 조회 2,193
11년 전 조회 2,465
11년 전 조회 2,391
11년 전 조회 2,181
11년 전 조회 2,349
11년 전 조회 2,337
11년 전 조회 2,333
11년 전 조회 2,454
11년 전 조회 2,048
11년 전 조회 2,127
11년 전 조회 2,294
11년 전 조회 2,152
11년 전 조회 2,219
11년 전 조회 2,129
11년 전 조회 2,088
11년 전 조회 2,157
11년 전 조회 2,802
11년 전 조회 2,109
11년 전 조회 2,425
11년 전 조회 2,314
11년 전 조회 2,072
11년 전 조회 2,082
11년 전 조회 2,179
11년 전 조회 2,126
11년 전 조회 2,714
11년 전 조회 5,618
11년 전 조회 2,691
11년 전 조회 2,408
11년 전 조회 2,842
11년 전 조회 9,028
11년 전 조회 2,601
11년 전 조회 3,814
11년 전 조회 2,625
11년 전 조회 2,567
11년 전 조회 2,878
11년 전 조회 2,371
11년 전 조회 2,358
11년 전 조회 2,344
11년 전 조회 2,393
11년 전 조회 3,008
11년 전 조회 2,404
11년 전 조회 2,658
11년 전 조회 2,449
11년 전 조회 6,152
11년 전 조회 2,162
11년 전 조회 2,595
11년 전 조회 2,955
11년 전 조회 2,492
11년 전 조회 6,801
11년 전 조회 4,911
11년 전 조회 6,491
11년 전 조회 2,341
11년 전 조회 2,671
11년 전 조회 2,873
11년 전 조회 2,732
11년 전 조회 2,709
11년 전 조회 2,127
11년 전 조회 4,857
11년 전 조회 4,377
11년 전 조회 3,728
11년 전 조회 2,915