사용자 정의 함수(1)

· 11년 전 · 2334

사용자 정의 함수(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,706
11년 전 조회 2,380
11년 전 조회 2,491
11년 전 조회 2,230
11년 전 조회 3,163
11년 전 조회 3,078
11년 전 조회 2,547
11년 전 조회 2,423
11년 전 조회 2,190
11년 전 조회 2,629
11년 전 조회 3,013
11년 전 조회 2,085
11년 전 조회 2,257
11년 전 조회 2,412
11년 전 조회 2,410
11년 전 조회 2,611
11년 전 조회 4,125
11년 전 조회 3,826
11년 전 조회 3,247
11년 전 조회 2,934
11년 전 조회 2,858
11년 전 조회 3,857
11년 전 조회 3,093
11년 전 조회 4,286
11년 전 조회 5,130
11년 전 조회 5,245
11년 전 조회 5,308
11년 전 조회 5,447
11년 전 조회 3,907
11년 전 조회 1.9만
11년 전 조회 2,862
11년 전 조회 2,595
11년 전 조회 2,601
11년 전 조회 2,382
11년 전 조회 2,544
11년 전 조회 2,382
11년 전 조회 2,162
11년 전 조회 2,619
11년 전 조회 2,314
11년 전 조회 2,227
11년 전 조회 2,510
11년 전 조회 2,443
11년 전 조회 2,212
11년 전 조회 2,394
11년 전 조회 2,367
11년 전 조회 2,377
11년 전 조회 2,494
11년 전 조회 2,085
11년 전 조회 2,167
11년 전 조회 2,335
11년 전 조회 2,190
11년 전 조회 2,262
11년 전 조회 2,167
11년 전 조회 2,127
11년 전 조회 2,200
11년 전 조회 2,841
11년 전 조회 2,149
11년 전 조회 2,459
11년 전 조회 2,352
11년 전 조회 2,112
11년 전 조회 2,124
11년 전 조회 2,221
11년 전 조회 2,171
11년 전 조회 2,739
11년 전 조회 5,653
11년 전 조회 2,725
11년 전 조회 2,458
11년 전 조회 2,870
11년 전 조회 9,072
11년 전 조회 2,635
11년 전 조회 3,853
11년 전 조회 2,670
11년 전 조회 2,606
11년 전 조회 2,917
11년 전 조회 2,405
11년 전 조회 2,398
11년 전 조회 2,381
11년 전 조회 2,429
11년 전 조회 3,042
11년 전 조회 2,444
11년 전 조회 2,679
11년 전 조회 2,474
11년 전 조회 6,183
11년 전 조회 2,194
11년 전 조회 2,619
11년 전 조회 2,982
11년 전 조회 2,519
11년 전 조회 6,835
11년 전 조회 4,937
11년 전 조회 6,516
11년 전 조회 2,362
11년 전 조회 2,696
11년 전 조회 2,898
11년 전 조회 2,762
11년 전 조회 2,726
11년 전 조회 2,161
11년 전 조회 4,886
11년 전 조회 4,405
11년 전 조회 3,754
11년 전 조회 2,956