ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • PHP - 함수
    PHP 2018. 2. 8. 04:06

    함수

    함수란 작성한 코드를 재 작성하는 것이 아닌 기존에 작성한 코드를 다시 활용하기 위해 만들어진 기능이다.

    필요할 때 마다 코드를 다시 실행시키는 것이 주 목적이다.




    함수의 정의 (Define)


    문법 - 

    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    function 함수이름 () {
        코드;
        .
        .
        .
    }
     ?>
     
    cs




    함수의 호출 (Call)


    문법 - 

    1
    2
    3
    4
    <?php
    함수이름();
     ?>
     
    cs




    예제 1 -

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    function numbering() {
      $i = 0;
      while ($i < 10)
      {
        echo $i;
        $i += 1;
      }
    }
     
    numbering();
    numbering();
    numbering();
     ?>
     
    cs


    먼저 함수를 정의하고, 함수를 호출한다.


    브라우저를 통해 해당 프로그램을 실행시켜보면 "012345678901234567890123456789"라는 결과가 화면에 출력된다.


    이것은 numbering(); 이라고 정의한 함수를 3번 호출(Call)했기 때문에 실행된 것이다.







    함수의 입력과 출력

    함수의 핵심은 입력과 출력이다.

    입력된 값을 연산하고 이를 출력하는 것이 함수의 기본적인 역할이다.




    return (출력)

    함수 내에서 사용한 return은 뒤에 따라오는 값을 함수의 결과로 반환하고 해당 함수를 종료한다.


    문법 - 

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    function get_member1() {
      return 'jamong';
    }
     
    function get_member2() {
      return 'icetea';
    }
     
     
    echo get_member1();
    echo '-';
    echo get_member2();
     ?>
     
    cs


    return 문법은 해당 부모 함수가 호출되었을 때 되돌려주는 기능이다.


    문법을 보면 return 'jamong';이라고 선언되었고 아래에서 echo get_member1();를 통해 함수를 호출했다.


    이 때 return은 'jamong'이라는 문자열을 되돌려주었고 호출했던 영역이 echo 'jamong'으로 변환되어 화면에 jamong이라는 문자열이 출력된다.


    ※ 컴파일러는 return을 읽어들이면 해당 함수를 종료한다.

    만약 return 이후에 코드가 작성되었을 경우 해당 코드들은 수행되지 않는다.




    인자 (입력)

    인자는 함수로 유입되는 입력 값을 의미한다.

    어떤 값을 인자로 전달하느냐에 따라서 함수가 반환하는 값이나 함수의 동작방법을 다르게 할 수 있다.



    문법 - 

    1
    2
    3
    4
    5
    6
    7
    <?php
    function get_argument($arg) {
      return $arg;
    }
    print get_argument(1);
    print get_argument(2);
     ?>
    cs


    함수를 호출할 때 인자를 넘겨주면 함수에서 해당 인자를 지역변수에 담아서 함수 내에서 활용할 수가 있다.




    활용 1 - 

    인자를 하나를 넘겨받아 사용하는 방법은 익혔다.

    이번엔 인자를 여러개로 넘겨받아 사용하는 방법을 알아보자.



    문법 - 

    1
    2
    3
    4
    5
    6
    7
    <?php
    function get_argument($arg1$arg2) {
      return $arg1 + $arg2;
    }
    print get_argument(15);
    print get_argument(210);
     ?>
    cs


    인자를 여러개로 넘겨서 활용하고 싶을 때는 함수를 정의할 때 지역변수를 원하는 수 만큼 등록한다.

    그리고 해당 함수를 호출할 때 정의한 함수의 지역변수의 수와 동일하게 맞추어 인자를 등록하여 호출한다.


    결과로는 1+5가 리턴되어 6, 그리고 2 + 10이 리턴되어 12가 화면에 출력된다.






    인자의 기본값

    만약 함수를 호출할 때 기본값을 사용하고 싶다면 어떻게 해야할까?

    기본값이란 인자의 값이 주어지지 않았을 때 사용하는 값을 의미한다.



    문법 - 

    1
    2
    3
    4
    5
    6
    <?php
    function get_argument($arg=값) {
      return $arg;
    }
     ?>
     
    cs

    함수를 정의할 때 지역변수를 초기화할 경우 입력받은 인자가 없을 경우 해당 초기화 값을 기반으로 코드가 수행된다.




    예제 1 -

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    function get_argument($arg=100) {
      return $arg;
    }
     
    echo get_argument(1);
    echo '<br />';
    echo get_argument();
     ?>
     
    cs

    첫번째 호출 장면에서는 인자로 1값을 넘겨주었다. 그래서 화면에서는 1이 출력되었다.

    두번째 호출 장면에서는 인자로 아무 값도 넘겨주지 않았다. 그래서 화면에서는 기본 초기화값인 100이 출력되었다.



    'PHP' 카테고리의 다른 글

    PHP - include와 namespace  (0) 2018.02.09
    PHP - 배열  (0) 2018.02.09
    PHP - 반복문 제어  (0) 2018.02.08
    PHP - 반복문  (0) 2018.02.08
    PHP - boolean의 대체제 (PHP의 특성!)  (0) 2018.02.07
Designed by Tistory.