ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • PHP - 논리연산자
    PHP 2018. 2. 6. 23:18

    논리연산자란?


    조건문을 좀 더 간결하고 다양한 방법으로 구사할 수 있도록 도와준다.




    AND문

    and문은 좌항과 우항이 모두 참(true)일 때 참이되는 논리연산자이다.

    ("and"를 단어로 사용해도 되고 "&&" 또한 and를 의미한다.)



    문법 - 

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php 
    if (true and true)    ## 좌항과 우항이 모두 true이므로 {echo 1;}이 수행된다.
    {
      echo 1;
    }
    if (true and false)    ## 좌항은 true이나 우항이 false이므로 {echo 2;}는 수행되지 않는다.
    {
      echo 2;
    }
    if (false and true)    ## 좌항은 false이므로 {echo 3;}은 수행되지 않는다.
    {
      echo 3;
    }
    if (false and false)     ## 좌항이 false이고 우항도 false이므로 {echo 4;}는 수행되지 않는다.
    {
      echo 4;
    }
     ?>
    cs




    활용


    form.html을 만들고 아래의 폼을 작성한다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <html>
    <head>
    </head>
    <body>
      <form method ="post" action = "engine.php">
          id : <input type = "text" name = "id" />
          password : <inpu type="password" name="password" />
          <input type = "submit" />
      </form>
    </body>
    </html>
     
    cs



    engine.php를 만들고 아래의 코드를 작성한다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    if ($_POST['id'=== 'rest' && $_POST['password'=== 'rest1234')
    {
      echo '정확한 데이터입니다.';
    }
    else
    {
      echo '잘못된 데이터입니다.';
    }
     ?>
     
    cs


    해당 코드를 보자.


    위에서 말했던 "and"를 의미하는 "&&" 문자가 들어갔다.


    POST방식으로 전달된 id값이 rest이고(and) POST방식으로 전달된 password값이 rest1234인 경우를 의미한다.


    만약 조건을 만족하면 화면에 '정확한 데이터입니다.'라는 글이 출력되게 된다.




    OR문

    or문은 좌항과 우항 중 하나라도 참(true)이라면 참이 되는 논리 연산자이다.

    ("or"를 단어로 사용해도 되고 "||" 또한 or를 의미한다.)



    문법 - 

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    if (true or true)    ## 좌항과 우항이 모두 true 이므로 {echo 1;}가 수행된다.
    {
      echo 1;
    }
    if (true or false)    ## 좌항이 true 이므로 {echo 2;}가 수행된다.
    {
      echo 2;
    }
    if (false or true)    ## 우항이 true 이므로 {echo 3;}가 수행된다.
    {
      echo 3;
    }
    if (false or false)    ## 좌항과 우항이 모두 false 이므로 {echo 4;}가 수행되지 않는다.
    {
      echo 4;
    }
     ?>
    cs




    활용


    form2.html에 다음과 같이 폼을 작성한다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <html>
    <head>
    </head>
    <body>
      <form method ="post" action = "engine2.php">
          id : <input type = "text" name = "id" />
          password : <input type="password" name="password" />
          <input type = "submit" />
      </form>
    </body>
    </html>
     
    cs


    engine2.php에 아래와 같이 코드를 작성한다.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    if ($_POST['id'=== 'rest' || $_POST['password'=== 'rest1234')
    {
      echo '정확한 데이터입니다.';
    }
    else
    {
      echo '잘못된 데이터입니다.';
    }
     ?>
     
    cs


    해당 코드를 보자.


    위에서 말했던 "or"를 의미하는 "||" 문자가 들어갔다.


    POST방식으로 전달된 id값이 rest이거나(or) POST방식으로 전달된 password값이 rest1234인 경우를 의미한다.


    만약 조건을 만족하면 화면에 '정확한 데이터입니다.'라는 글이 출력되게 된다.





    !(부정) 문

    부정문은 boolean 값을 부정할 때 사용하는 논리연산자이다. boolean값 앞에 "!"를 붙여 사용한다.



    문법 -

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    if (!true)    ## true라는 의미를 부정하여 {echo 1;}이 아닌 else문이 실행되어 {echo 2;}을 .
    {
        echo '1';
    }
    else
    {
        echo '2';
    }
     
     ?>
     
    cs





    'PHP' 카테고리의 다른 글

    PHP - 반복문  (0) 2018.02.08
    PHP - boolean의 대체제 (PHP의 특성!)  (0) 2018.02.07
    PHP - 조건문  (0) 2018.02.06
    PHP - GET vs POST 방식의 차이점  (0) 2018.02.06
    PHP - submit  (0) 2018.02.06
Designed by Tistory.