ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [PHP] 3. 변수(Variables) - PHP 강좌, PHP5
    Web/PHP 2015. 6. 13. 11:57
    PHP 5 Variables
     

    1. Creating (Declaring) PHP Variables
     PHP에서 변수는 $ 마크로 시작되고, 변수의 이름이 바로 따릅니다:

    1
    2
    3
    4
    5
    <?php
    $txt = "Hello world!";
    $x = 5;
    $y = 10.5;
    ?>
    cs
     


     위 문을 실행시키고 난 후, 변수 $txtHello world! ​값을 가지고 있게 됩니다. $x5 값을 가지고 있습니다.





    2. PHP Variables
     변수는 짧은 이름을 갖거나 혹은 좀 더 묘사적인 이름(age, carname,total_volume)을 갖을 수 있습니다.

     PHP 변수에 대한 규칙:
      - $ 마크로 시작하여, 바로 변수의 이름이 따라옵니다.
      - 시작은 소문자이거나 언더바 문자로 해야합니다.
      - 시작은 숫자로 시작해서는 안됩니다.
      - 변수는 문자,숫자, 언더바만 포함해야 합니다.
      - case-sensitive 합니다.





    3. Output Variables
     PHP echo 문은 스크린에 데이터를 출력하는데 종종 사용됩니다.

    1
    2
    3
    4
    <?php
    $txt = "W3Schools.com";
    echo "I love $txt!";
    ?>
    cs
     
     
     아래 예제는 위의 예제와 동일합니다.



    1
    2
    3
    4
    <?php
    $txt = "W3Schools.com";
    echo "I love " . $txt . "!";
    ?>
    cs

     

     


     아래 예제는 두 변수의 합을 출력합니다.


     

    1
    2
    3
    4
    5
    <?php
    $x = 5;
    $y = 4;
    echo $x + $y;
    ?>
    cs

     






    4. PHP is a Loosely Typed Language
     위 예제에서 보셨듯, PHP는 변수의 데이터 타입을 명시하지 않습니다.

     PHP는 자동적으로 변수를 올바른 데이터 타입으로 변환합니다.

     C, C++, JAVA와 같은 다른 언어에서는 프로그래머가 변수를 사용하기 전에 변수명과 타입을 선언해야 합니다.





    5. PHP Variables Scope
     PHP에서 변수는 스크립트 어디서나 위치 할 수 있습니다.
     
     변수의 범위는 변수를 참조하거나 사용하기위한 스크립트의 부분입니다.

     PHP는 3 가지 변수 범위를 갖습니다:
      - local
      - global
      - static


    6. Global and Local Scope
     함수 바깥(outside)​에 선언된 변수는 GLOBAL 범위를 갖습니다. 또한 바깥에서만 접근해야만 합니다.



    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <!DOCTYPE html>
    <html>
    <body>
     
    <?php
    $x = 5// global scope
      
    function myTest() {
         // using x inside this function will generate an error
         echo "<p>Variable x inside function is: $x</p>";
    myTest();
     
    echo "<p>Variable x outside function is: $x</p>";
    ?>
     
    </body>
    </html>
    cs

     

     











     함수 안(inside)에 선언된 변수는 Local 범위를 갖고 함수 안에서만 접근 가능 합니다:


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    function myTest() {
        $x = 5// local scope
        echo "<p>Variable x inside function is: $x</p>";
    myTest();
     
    // using x outside the function will generate an error
    echo "<p>Variable x outside function is: $x</p>";
    ?>
    cs
     




    7. PHP The global Keyword
     global 키워드는 함수 내에서 전역(global) 변수를 접근하기 위해 사용됩니다.

     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $x = 5;
    $y = 10;
     
    function myTest() {
        global $x$y;
        $y = $x + $y;
    }
     
    myTest();
    echo $y// outputs 15
    ?>
    cs

     



     PHP는 또한 $GLOBALS[index]라 불리는 배열에 모든 전역 변수를 저장하고 있습니다. 

     index는 변수의 이름을 갖습니다. 이 배열은 또한 함수 내에서 접근 가능하고 전역 변수를 바로 수정 하는데 사용됩니다.






    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <!DOCTYPE html>
    <html>
    <body>
     
    <?php
    $x = 5;
    $y = 10;
     
    function myTest() {
         $GLOBALS['y'= $GLOBALS['x'+ $GLOBALS['y'];
     
    myTest();
    echo $y;
    ?>
     
    </body>
    </html>
    cs

     









    8. PHP The static Keyword
     일반적으로, 함수가 완료되고 실행되고나면, 함수 내의 모든 변수는 삭제됩니다.
     
     그러나, 가끔 local 변수가 삭제되기를 원치 않을 때가 있습니다. 

     이러한 작업을 위해, static 키워드를 사용하여 변수의 선언에 사용합니다:




    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <!DOCTYPE html>
    <html>
    <body>
     
    <?php
    function myTest() {
         static $x = 0;
         echo $x;
         $x++;
    }
     
    myTest();
    echo "<br>";
    myTest();
    echo "<br>";
    myTest();
    echo "<br>";
    myTest();
    echo "<br>";
    myTest();
    ?>  
     
    </body>
    </html>
    cs

     







     


     각각 함수가 호출될 때, 변수는 마지막에 함수가 호출될 때 갖고 있던 값을 그대로 가지고 있습니다.









    * 이 강좌는 'w3schools'를 참조하여 작성하였습니다.


    댓글

Designed by Tistory.