happy cat image

everdevel

Web Technology, 에버디벨

UI 변경

EEOS

에버디벨 책을 학습할 수 있는 클라우드 개발 환경을 제공합니다.
개발환경구축없이 태블릿에서도 개발할 수 있는 책의 예제와 프로젝트
오직 당신을 위한 스토리지, URL, DB, 무제한 트래픽
그리고 웹기반 개발환경을 제공합니다.

더 알아보기
에버디벨이 만든 무료 클라우드 개발환경을 소개합니다.

제어문 - SWITCH 문

if문은 참/거짓의 둘 중의 하나를 선택해서 수행하는 반면, switch 여러가지 중에서 하나를 선택합니다.

switch를 사용하기 위해서 선언된 변수의 값이 주어진 여러가지 case중에서 참인 것을 찾아 선택합니다.

변수 $a = 3이라고 선언하면 해당되는 case가 선택되어 해당 문장을 수행하는 과정은 아래와 같습니다.

<?php
    echo "변수 \$a=3을 선언할 때 switch 문 활용<br />";

    $a = 2;

    switch ($a) {
        case 0:
            echo "변수 \$a는 숫자 0 입니다.... <b> case 0: 적용 </b><br />";
            break;

        case 1:
            echo "변수 \$a는 숫자 1 입니다.... <b> case 1: 적용 </b><br />";
            break;

        case 2:
            echo "변수 \$a는 숫자 2 입니다.... <b> case 2: 적용 </b><br />";
            break;

        case 3:
            echo "변수 \$a는 숫자 3 입니다.... <b> case 3: 적용 </b><br />";
            break;

        case 4:
            echo "변수 \$a는 숫자 4 입니다.... <b> case 4: 적용 </b><br />";
            break;

        default:
            echo "변수 \$a = {$a}는 0,1,2,3 이외의 숫자입니다.<br />";
    }
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 빠르게 로그인 하세요.)

로그인 하여 위의 코드를 클릭 한번에 실행하려면 여기를 클릭해 주세용.
php image

$a의 값을 2로 입력하고 그리고 switch의 조건으로 $a를 설정하면,

그렇게 해서 case 1, case 2, case 3 case 4를 지정해준다면

switch에 부합하는것은 2이므로 case 2의 실행문들이 실행됩니다.

각 case에 break가 있는데 break는 그 조건이 부합할때 위의 실행문을 실행하고 break문을 만나면 switch문을 빠져나옵니다.

만약 break를 선언해 주지 않았다면 아래와 같은 결과가 발생합니다.

php image

break문이 선언되지 않았기 때문에 2의 조건에 부합한후 빠져나오지 않고 아래의 case들을 모두 실행하게 됩니다.

위의 예문을 if문으로 구현한다면 아래와 같이 된다.

<?php
    echo "switch문을 if문으로 변환하기 <br />";
    echo "<hr />";

    $a = 3;

    if($a == 0)
        echo "변수 $a는 숫자 0 입니다 <br>";
    else if ($a == 1)
        echo "변수 $a는 숫자 1 입니다 <br>";
    else if ($a == 2)
        echo "변수 $a는 숫자 2 입니다 <br>";
    else if($a == 3)
        echo "변수 $a는 숫자 3 입니다 <br>";
    else
        echo "0 1 2 3 전부 아닙니다.";
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 빠르게 로그인 하세요.)

로그인 하여 위의 코드를 클릭 한번에 실행하려면 여기를 클릭해 주세용.
php image

다음은 switch문의 활용입니다.

<?php
    echo "switch 문을 이용하여 월의 날짜 표시 <br /><hr />";

    $mon = 2;

    switch ($mon) {
        case 1:
        case 3:
        case 5:
        case 7:
        case 8:
        case 10:
        case 12:
        echo "{$mon}월은 31일까지 있습니다.<br />";
        break;

        case 4:
        case 6:
        case 9:
        case 11:
        echo "{$mon} 월은 30일까지 있습니다.<br />";
        break;

        case 2:
        echo "{$mon} 월은 28일 (평년기준)까지 있습니다.<br />";
        break;

        default:
        echo "{$mon}는 월을 나타내는 1~12이외의 숫자입니다.<br />";
    }
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 빠르게 로그인 하세요.)

로그인 하여 위의 코드를 클릭 한번에 실행하려면 여기를 클릭해 주세용.
php image

switch문도 크거나 작거나 등의 연산자를 조건으로 사용할 수 있습니다.
다음의 예제처럼요.

<?php
    echo "switch 문의 조건을 넣기<br /><hr />";

    $age = 23;

    switch ($age) {
        case ($age >= 10 && $age <= 19):
            echo "10대 입니다.";
            break;

        case ($age >= 20 && $age <= 29):
            echo "20대 입니다.";
            break;

        case ($age >= 30 && $age <= 39):
            echo "30대 입니다.";
            break;

        case ($age >= 40 && $age <= 49):
            echo "40대 입니다.";
            break;

        case ($age >= 50 && $age <= 59):
            echo "50대 입니다.";
            break;

        case ($age >= 60 && $age <= 69):
            echo "60대 입니다.";
            break;

        case ($age >= 70 && $age <= 79):
            echo "70대 입니다.";
            break;

        case ($age >= 80 && $age <= 89):
            echo "80대 입니다.";
            break;

        case ($age >= 90 && $age <= 99):
            echo "90대 입니다.";
            break;

        default:
        echo "아가 PHPer군요.";
    }
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 빠르게 로그인 하세요.)

로그인 하여 위의 코드를 클릭 한번에 실행하려면 여기를 클릭해 주세용.

2019년 에버디벨이 제안하는 클라우드 개발환경(EEOS)이 드디어 오픈했습니다.
이제 개발환경구축없이 웹브라우저에서 웹개발하자
HTML5, CSS3, JavaScript를 넘어 MySQL, PHP까지
앞으로 지원 언어는 더 늘어날 예정 react, node, angular등
웹브라우저만 있다면 기기도 가리지 않아요. 이제 아이패드에서도 웹개발해요.!!
자기만의 클라우드 에디터, 저장공간, 데이터베이스, 접속 URL(eeosXXX.adjkl.com/eeos/)을 제공해요.
현재 웹코딩 시작하기와 PHP200 독자는 mybook(책과 관련된 기능 제공)에서 사용할 수 있습니다.

EEOS 신청하기 EEOS 알아보기

강좌로 돌아가기