사용자 정의 함수(1)

· 11년 전 · 2318

사용자 정의 함수(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,698
11년 전 조회 2,368
11년 전 조회 2,484
11년 전 조회 2,217
11년 전 조회 3,146
11년 전 조회 3,070
11년 전 조회 2,535
11년 전 조회 2,414
11년 전 조회 2,173
11년 전 조회 2,618
11년 전 조회 3,007
11년 전 조회 2,071
11년 전 조회 2,246
11년 전 조회 2,403
11년 전 조회 2,395
11년 전 조회 2,597
11년 전 조회 4,115
11년 전 조회 3,812
11년 전 조회 3,236
11년 전 조회 2,911
11년 전 조회 2,846
11년 전 조회 3,846
11년 전 조회 3,080
11년 전 조회 4,277
11년 전 조회 5,119
11년 전 조회 5,235
11년 전 조회 5,296
11년 전 조회 5,436
11년 전 조회 3,899
11년 전 조회 1.9만
11년 전 조회 2,848
11년 전 조회 2,580
11년 전 조회 2,593
11년 전 조회 2,366
11년 전 조회 2,531
11년 전 조회 2,368
11년 전 조회 2,155
11년 전 조회 2,603
11년 전 조회 2,295
11년 전 조회 2,213
11년 전 조회 2,497
11년 전 조회 2,422
11년 전 조회 2,199
11년 전 조회 2,385
11년 전 조회 2,356
11년 전 조회 2,363
11년 전 조회 2,483
11년 전 조회 2,075
11년 전 조회 2,154
11년 전 조회 2,319
11년 전 조회 2,177
11년 전 조회 2,248
11년 전 조회 2,153
11년 전 조회 2,115
11년 전 조회 2,191
11년 전 조회 2,831
11년 전 조회 2,135
11년 전 조회 2,443
11년 전 조회 2,339
11년 전 조회 2,101
11년 전 조회 2,110
11년 전 조회 2,208
11년 전 조회 2,159
11년 전 조회 2,729
11년 전 조회 5,643
11년 전 조회 2,717
11년 전 조회 2,448
11년 전 조회 2,861
11년 전 조회 9,060
11년 전 조회 2,624
11년 전 조회 3,848
11년 전 조회 2,655
11년 전 조회 2,591
11년 전 조회 2,906
11년 전 조회 2,391
11년 전 조회 2,387
11년 전 조회 2,370
11년 전 조회 2,416
11년 전 조회 3,033
11년 전 조회 2,431
11년 전 조회 2,671
11년 전 조회 2,463
11년 전 조회 6,168
11년 전 조회 2,184
11년 전 조회 2,612
11년 전 조회 2,971
11년 전 조회 2,507
11년 전 조회 6,819
11년 전 조회 4,928
11년 전 조회 6,506
11년 전 조회 2,352
11년 전 조회 2,689
11년 전 조회 2,887
11년 전 조회 2,753
11년 전 조회 2,722
11년 전 조회 2,150
11년 전 조회 4,877
11년 전 조회 4,396
11년 전 조회 3,744
11년 전 조회 2,943