• 회원가입
  • 로그인
  • 구글아이디로 로그인

[PHP7-바위] PHP7 5강 - 함수, (매개변수/독립변수), (지역변수/전역변수), 정적변수

998  

목차
  1. 함수 정의/호출
  2. 매개변수/독립변수
  3. 배열 출력 함수
  4. 지역변수/전역변수
  5. 정적변수

 

함수 정의/호출

[함수 정의]

 

function 함수명(매개변수1, 매개변수2, ...) {

    할 일;

}

 


[함수 호출]

 

함수명(독립변수1, 독립변수2, ...);

 


매개변수/독립변수

 

<?php

// 함수 정의

function sum($x, $y) { // $x, $y - 매개변수

    return $x + $y;

}


// 함수 호출

echo sum(3, 4); // 3,4 - 독립변수

?>

 


배열 출력 함수

 

<?php

$arr = array("홈짱닷컴","Homzzang.com","2012");


print_r($arr); 

/* 결과값: 

Array ( [0] => 홈짱닷컴 [1] => Homzzang.com [2] => 2012 )

*/


function print_r2($x) {

    echo "<pre>";

    print_r($x);

    echo "</pre>";

}

print_r2($arr);

/* 결과값:

Array

(

    [0] => 홈짱닷컴

    [1] => Homzzang.com

    [2] => 2012

)

*/

?>

 


지역변수/전역변수

[지역변수]

 

<?php

function sam() {

    $x = 3; // 지역변수

    echo $x;  // 3

}

sam();

echo $x; // 에러 발생

?>

 


[전역변수]


<?php

$x = 3; // 전역변수

function sam() {

    echo $x; // 에러 발생

}

sam();

echo $x; // 3

?>



[전역변수를 함수 안에서 사용하는 방법 2가지]

 

<?php

$x = 3;

function sam() {

    global $x; // 방법1 - global 키워드 사용

    $x = $GLOBALS['x']; // 방법2 - $GLOBAL['전역변수명'] 사용

    echo $x; // ㅇ

}

sam();

echo $x; // 3

?>

 


정적변수

 

<?php

function up() {

   static $x = 0;

   echo $x;

   $x++;

}

up(); // 0

up(); // 1

up(); // 2

?>

 


cf. static 키워드 없는 경우

 

<?php

function up() {

   $x = 0;

   echo $x;

   $x++;

}

up(); // 0

up(); // 0

up(); // 0

?>