다른 예라면 PHP입니다. PHP의 IF-ELSE 구성 기본 사항입니다. 중첩된 if-else 구문

2016년 11월 16일

사용하여 조건문 if, else, elseif 논리적 구조를 생성하고 무엇이든 스크립트를 작성할 수 있습니다. 이들의 이름을 번역하면 조건문, 그러면 우리가 말하는 내용을 즉시 이해하게 될 것입니다.

만약에"만약"으로 번역됨

또 다른"그렇지 않으면"으로 번역됨

조건문 구성의 논리는 간단합니다. 우리는 일상 생활에서 이런 종류의 논리를 접합니다.

예를 들어 다음과 같은 진술이 있습니다.

불을 켜면,
가벼울 것입니다.
그렇지 않으면
어두워질 것이다.

"if"와 "else"라는 단어는 단지 조건문일 뿐입니다.

프로그래밍 언어에서도 동일하지만 아이디어의 창시자로서 조건문을 사용하여 조건과 이벤트를 직접 설정합니다.

if (조건이 참) (
어떤 조치가 발생합니다.
}
else 조건이 참이 아닌 경우(
또 다른 작업이 발생합니다.
}

PHP 구문은 다음과 같습니다:

if (조건이 참) (
일부 작업이 수행됩니다.
}
또 다른(
조건이 true가 아닌 경우 다른 작업을 수행합니다.
}
?>

연습에 더 가깝습니다.

조건문을 사용하여 버튼에 대한 스크립트를 작성합니다.

폴더 내 서버 열기 -> 도메인예를 들어 폴더를 만들고 이름을 지정해 보겠습니다. 레슨3.현지의.

편집기에서 파일 만들기 색인.PHP(구문을 PHP로 설정하고) 폴더에 저장합니다. 레슨3.현지의.

그리고 간단한 HTML 버튼을 작성해 보겠습니다.




charset="utf-8" >
<span>그렇지 않으면 구성</span>


액션="" 메소드="POST" >





속성의 경우 방법태그에 형태우리는 값을 설정 우편. 이는 양식 데이터가 메소드를 사용하여 전송된다는 것을 의미합니다. 우편. 다음 강의에서는 데이터 전송 방법에 대해 자세히 설명하겠습니다. 무슨 일이야? 행동아직은 너무 걱정하지 마세요.

우리가 열면 색인.PHP~을 통해 열려 있는섬기는 사람, 그러면 버튼만 있지만 아직 작동하지 않습니다.

이제 우리는 스크립트 자체를 작성합니다.

버튼을 클릭할 때 "버튼을 클릭했습니다"라는 문구가 나타나기를 원한다고 가정해 보겠습니다.

논리적으로 다음과 같습니다.

(버튼을 누른 경우)(
"버튼을 눌렀습니다"라는 문구가 표시됩니다.
}

조건 연산자를 사용하여 표현식을 PHP 언어에 더 가깝게 만들어 보겠습니다.

if (버튼을 눌렀을 때) (
문구가 표시됩니다“버튼을 눌렀습니다”;
}
?>

이제 HTML 아래에 PHP 코드 자체를 작성합니다.

if (isset ($_POST[ "그러나" ]));
에코 "당신이 버튼을 눌렀어요";
}
?>

이 코드를 PHP에서 러시아어로 번역하면 다음과 같습니다.

If (set(양식 방법 POST [ '하지만'이라는 이름의 버튼])){
문구가 표시됩니다 "당신이 버튼을 눌렀어요";
}

그리고 완전히 러시아어라면

이름이 지정된 버튼을 클릭했을 때 POST 메서드를 사용하여 양식 데이터를 제출한 경우,
그러면 사용자는 "버튼을 클릭했습니다"라는 문구를 보게 됩니다.

이는 프로그래머가 스크립트를 작성할 때 대략적으로 생각해야 하는 방식입니다.

모든 따옴표와 괄호는 닫혀 있어야 합니다.

우리는 두 개의 버튼에 대한 스크립트를 작성하고 있습니다.

스크립트는 다음과 같습니다:

버튼1을 누르면,
그런 다음 "버튼 1을 눌렀습니다."라는 메시지가 표시됩니다.
또는 버튼 2를 누르면
그러면 "버튼 2를 눌렀습니다"라는 메시지가 표시됩니다.




charset="utf-8" >
<span>두 개의 버튼에 대한 스크립트</span>


액션="" 메소드="POST" >







if (isset ($_POST [ "but1" ]))(
에코 "버튼 1을 눌렀습니다.";
}
elseif(isset($_POST["but2"]))(
에코 "버튼 2를 눌렀습니다.";
}
?>

내 생각엔 당신이 버튼을 알아낸 것 같아요. 따라서 버튼 3개와 10개에 대한 스크립트를 작성할 수 있습니다.

우리는 이름으로 인사말 스크립트를 작성합니다.

시나리오는 다음과 같습니다. 사용자가 창에 자신의 이름을 입력하고 버튼을 클릭하면 인사말 문구가 나타납니다.

따라서 먼저 HTML 양식을 작성합니다.




charset="utf-8" >
<span>그렇지 않으면 구성</span>


액션="" 메소드="POST" >

당신의 이름


유형 ="제출" 이름 ="제출" 값 ="제출" >!}






먼저 우리는 생성해야합니다ь 변수 $ 이름, 여기에 사용자가 입력할 이름을 입력합니다.

$name=$_POST [ "이름" ] ;

그런 다음 HTML 형식에서 다음을 사용하여 이미 익숙한 구성을 작성합니다. 조건부 연산자 만약에:

$name=$_POST ["이름" ];
if (isset ($_POST ["제출" ]))(
echo "안녕하세요" ." " .$name ;
}
?>

우리는 간단한 인증 스크립트를 작성하고 있습니다.

Vasya와 Petya라는 두 명의 사용자만 있다고 가정해 보겠습니다. 시스템은 다른 사용자를 알지 못합니다.

Vasya라는 이름을 입력하면
그러면 "Hello Vasya"라는 문구가 나타납니다.
또는 Petya라는 이름을 입력하면
그러면 "Hello Petya"라는 문구가 나타납니다.
그렇지 않고 아무것도 입력하지 않거나 다른 이름을 입력하면
그러면 “Hello guest”라는 문구가 나타날 것입니다.




charset="utf-8" >
<span>간편인증</span>


액션="" 메소드="POST" >

당신의 이름


유형 ="제출" 이름 ="제출" 값 ="로그인" >!}







$name = $_POST ["이름" ];
if ($이름 = = "바샤" )(
echo "안녕하세요" ." " .$name;
}
elseif($이름 = = "페트야" )(
echo "안녕하세요" ." " .$name ;
}
또 다른(
echo "안녕하세요 손님" ;
}
?>

그리고 마지막으로, 동시에 기억하세요:

하루 중 시간에 따른 인사말 스크립트입니다.

$hour = (int)strftime ("%H" );
$환영 = " "; // 인사말 변수를 초기화합니다.
if ($시간 > 0 && $시간<= 6 )
$welcome = "잘 자요!" ;
elseif($시간 > 6 && $시간<= 12 )
$welcome = "좋은 아침입니다!" ;
elseif($시간 > 12 && $시간<= 18 )
$welcome = "안녕하세요!" ;
elseif($시간 > 18 && $시간<= 23 )
$welcome = "안녕하세요!" ;
else $welcome = "안녕하세요!" ;
$헤더 = "$welcome 저희 사이트에 오신 것을 환영합니다!";
?>



charset="utf-8">
<span>시간


<?php 에코 $헤더 ?>





따라서 다음을 사용하여 많은 시나리오를 생각해낼 수 있습니다. 조건문 만약, 그렇지 않으면, 그렇지 않으면.따라서 연습하세요. 코드를 복사하는 것보다 직접 입력하는 것이 좋습니다. 이렇게 하면 PHP 언어를 빠르게 마스터할 수 있습니다.

조건부 연산자지정된 표현식(조건)의 계산 결과에 따라 특정 코드 블록을 건너뛰거나 실행할 수 있습니다. 조건문은 프로그램의 결정 지점이라고 할 수 있습니다. 때로는 분기문이라고도 합니다. 프로그램이 도로이고 PHP 인터프리터가 도로를 따라 걷는 여행자라고 상상한다면 조건문은 프로그램 코드가 두 개 이상의 도로로 분기되는 교차로로 간주될 수 있으며 이러한 교차로에서 인터프리터는 어느 길을 선택해야 하는지 선택해야 합니다. 다음에 가야 할 길.

if 문

if 문은 분기 문 중 가장 간단합니다.

if 문의 구문은 다음과 같습니다.

if 문은 먼저 괄호 안에 지정된 조건식을 평가하며 그 결과는 부울 값입니다. 얻은 결과가 참이면 명령이 실행됩니다. 표현식이 false를 반환하면 명령이 실행되지 않습니다. 복잡한 표현을 조건으로 사용할 수 있습니다.

if 문의 본문이 하나의 명령만 사용하는 경우 이를 중괄호로 묶는 것이 가능하지만 반드시 그럴 필요는 없습니다. 그러나 if 문의 본문에서 둘 이상의 명령어를 실행해야 하는 경우 이러한 여러 명령어를 중괄호로 묶어야 합니다. 닫는 중괄호 뒤에는 세미콜론이 있어서는 안 됩니다.

다음 코드는 if 문의 사용을 보여줍니다.

If 문은 다른 if 문 내에 중첩될 수 있습니다.

마지막 예에 주의하세요. 명령어를 if 문 아래에 정확하게 작성할 필요는 없습니다. 명령어의 크기가 크지 않으면 한 줄에 작성할 수 있습니다.

if else 문

그래서 우리는 if 문을 사용하면 조건이 참인 경우 명령을 실행할 수 있다는 것을 배웠습니다. 조건이 거짓이면 아무 작업도 수행되지 않습니다. 그러나 특정 조건이 참이면 일부 명령을 실행하고, 조건이 거짓이면 다른 명령을 실행해야 하는 경우가 많습니다. 그러한 경우에는 분기가 사용됩니다. 이는 if 문과 명령문 블록, else 키워드와 또 다른 명령문 블록으로 구성됩니다.

if else 문의 구문은 다음과 같습니다.

else 문은 선택 사항입니다. else 뒤에 위치한 명령어 블록은 기본적으로 실행됩니다. if의 조건식이 false를 반환하는 경우. else 문은 if 문과 별도로 사용할 수 없습니다. else 블록은 if 문 뒤에만 나타나야 하며 기본 동작으로 간주될 수 있습니다.

이전 예제를 약간 수정하면 조건이 false를 반환하는 경우 if else 문이 어떻게 작동하는지 확인할 수 있습니다.

if else 문은 중첩될 수 있습니다. 이러한 중첩된 조건문은 실제로 자주 발생합니다. if 문이 다른 if 또는 else 블록 내에 중첩되면 중첩됩니다. 코드에서 여러 개의 if 문을 연속으로 사용하는 경우 else는 항상 가장 가까운 if를 참조합니다.

마지막 else는 if($a)가 내부 블록에 없기 때문에 적용되지 않으므로 가장 가까운 것은 if($i)입니다. 블록 내부의 else 문은 if($b)와 관련이 있습니다. 왜냐하면 이 if가 if와 가장 가깝기 때문입니다.

elseif/else if 구성

if/else 문은 조건식의 값을 평가하고 프로그램 코드의 특정 부분을 실행합니다. 하지만 많은 조각 중 하나를 실행해야 한다면 어떻게 될까요? 연속해서 여러 조건을 확인해야 하는 경우 elseif 또는 else if 구성이 이에 적합합니다(이것은 동일한 구성이지만 다르게 작성되었습니다). 공식적으로 이는 독립적인 PHP 구성이 아닙니다. 반복되는 if/else 문을 사용하여 구성된 일반적인 프로그래밍 스타일일 뿐입니다. true가 발견되거나 else 블록에 도달할 때까지 추가 조건을 테스트할 수 있습니다. elseif/else if 구성 if 문 뒤와 else 문(있는 경우) 앞에 배치해야 합니다.

여기에서는 세 가지 조건을 확인하고 $username 변수의 값에 따라 다른 작업이 수행됩니다.

이 작품에는 사실 특별한 것이 없습니다. 이는 단순히 일련의 if 문이며, 여기서 각 if 문은 이전 if 문의 else 절의 일부입니다. 이러한 형식의 표기법을 처음 접하고 이것이 어떻게 작동하는지 실제로 이해하지 못하는 사람들을 위해 구조의 중첩을 완전히 보여주는 동등한 구문 형식으로만 동일한 예를 다시 작성하겠습니다.

이 레슨은 이전 레슨보다 조금 더 복잡하지만, 두려워하지 마세요. PHP에 대한 지식이 더 높은 수준으로 올라가야 합니다. 이 기사에서는 여러 조건으로 구성된 설계에 중점을 둘 것입니다. 우리는 PHP의 if-else 조건 연산자를 계속해서 연구합니다.

if-else 문을 계속 연구하기 전에 if 조건에 사용되는 기호를 살펴보는 것이 좋습니다. 기억하거나 적어두세요:

평등: ==
예: if ($a == $b)

동등하지 않음: !=
예: if ($a != $b)

더 보기: >
예: if ($a > $b)

더 적은:<
예: if ($a< $b)

이상: >=
예: if ($a >= $b)

작거나 같음:<=
예: if ($a<= $b)

논리적 "그리고": 그리고
예: if ($a ==$b 및 $c !=$d)

논리적 “또는”: 또는 , ||
예: if ($a ==$b || $c !=$d)

이제 계속하겠습니다.

이중 if-else 조건

어디에 적용할 수 있나요? 한 사이트에 대한 관리자 패널을 만들 때 로그인과 비밀번호를 확인하기 위해 이중 조건을 사용했습니다.
이중 조건을 생성하려면 두 개의 변수를 더 추가해야 합니다. 예: $k = 55; $n = 88.
다음과 같이 보일 것입니다:

if ($a != $b 그리고 $k != $n)

그리고 - 당신은 이것이 논리적인 "and"를 의미한다는 것을 이미 알고 있습니다.

PHP 코드에서는 어떻게 보일지:

웹사이트를 위한 PHP의 기본

설명:
보세요, 조건에서 우리는 변수 $a와 $b가 동일하고($a == $b) 변수 $k와 $n이 동일하지 않은 경우($k)를 나타냈습니다. != $n), 조건이 올바른 것으로 간주됩니다. 조건이 정확하면 코드의 다음 부분이 작동합니다.

{
echo "모든 것이 정상입니다:)";
}

브라우저에 주소를 입력하세요:

결과:

변수 $a의 값이 변수 $b의 반대 값으로 변경되면 조건이 충족되지 않습니다! 왜? 예, 왜냐하면 변수($a == $b)서로 같지 않습니다. 조건이 충족되지 않으면 코드의 다른 부분이 작동합니다.

또 다른
{
echo "모든 것이 정상은 아닙니다: (";
}

PHP 코드에서 어떻게 보이는지:

웹사이트를 위한 PHP의 기본

PHP 코드를 로컬 서버의 "test-1" 폴더에 "if-else.php"로 저장합니다(1과 참조).

브라우저에 주소를 입력하세요:

https://localhost/test-1/if-else.php

결과:

중첩된 if-else 구문.

중첩된 if-else 문을 무엇이라고 하나요?이는 여러 조건으로 구성된 구조입니다.

이제 중첩된 if-else 구문을 살펴보겠습니다. 이러한 구성은 실행되는 규칙의 여러 조건으로 구성될 수 있습니다. 예를 들어 변수 $familiya를 두 개 더 추가해 보겠습니다. 1 그리고 $family 2 :

$가족 1 =" 이바노프";
$가족 2 =" 시다로프";

PHP 코드에서 어떻게 보이는지:

웹사이트를 위한 PHP의 기본 familiya1과 familiya2 변수에는 서로 다른 성이 포함되어 있습니다."; ) else ( echo "생각만큼 나쁘지는 않습니다:(
familiya1 및 familiya2 변수에는 동일한 성이 포함되어 있습니다."; ) ) else ( echo "모든 것이 정상이 아닙니다:("; ) ?>

설명:
봐, 여기서는 모든 조건이 충족됐어

만약 ($a) == $b 및 $k != $n)

변수 $a는 변수 $b와 같고 변수 $k는 $n과 같지 않습니다. 여기서 조건이 충족되었습니다. 이는 코드의 다음 부분이 작동함을 의미합니다.

if ($가족1 != $가족2)
{
echo "괜찮아요 :)
";
}

$family 변수 이후 1 그리고 $family 2 그들은 서로 동등하지 않으며 이것이 사실입니다.

$family1=" 이바노프";
$family2=" 시다로프";

그러면 코드의 이 부분이 작동합니다.

{
echo "괜찮아요 :)
변수 familiya1과 familiya2에는 서로 다른 성이 포함되어 있습니다.";
}

결과를 보자! PHP 코드를 로컬 서버의 "test-1" 폴더에 "if-else.php"로 저장합니다(1과 참조).

브라우저에 주소를 입력하세요:

https://localhost/test-1/if-else.php

결과:

$familiya1 및 $familiya2 변수가 동일한 값으로 설정된 경우:

$family1=" 시다로프";
$family2=" 시다로프";

그러면 아쉽게도 여기의 조건은 충족되지 않습니다. 조건에 변수가 동일해서는 안 된다고 명시되어 있기 때문입니다.

if ($가족1 != $가족2)

이러한 이유로 코드의 다음 부분이 작동합니다.

또 다른
{
에코 " 생각보다 나쁘지는 않네요 :(

변수 familiya1과 familiya2에는 동일한 성이 포함되어 있습니다.";
}

결과적으로 모니터에 그림이 표시됩니다.

그래서 우리는 "라는 주제를 완전히 마쳤습니다. PHP용 If-else 조건문" 5과와 6과의 내용을 보강하려면 자신만의 조건을 직접 만들어 보는 것이 좋습니다.

그리고 나는 당신을 위해 PHP 기본에 대한 새로운 강의를 준비하러 갈 것입니다. PHP 수업을 놓치고 싶지 않다면 블로그 업데이트를 구독하세요.
최고의 소원!

(PHP 4, PHP 5, PHP 7)

elseif는 이름에서 알 수 있듯이 다음의 조합입니다. 만약에그리고 또 다른. 좋다 또 다른, 그것은 확장 만약에원본의 경우 다른 명령문을 실행하는 명령문 만약에표현식은 다음으로 평가됩니다. 거짓. 그러나 달리 또 다른, 다음과 같은 경우에만 대체 표현식을 실행합니다. elseif조건식은 다음과 같이 평가됩니다. 진실. 예를 들어, 다음 코드는 a가 b보다 크거나, a가 b와 같거나, a가 b보다 작음을 표시합니다.

if ($a > $b) (
echo "a가 b보다 큽니다." ;
) elseif ($a == $b ) (
echo "a는 b와 같습니다." ;
) 또 다른 (
echo "a는 b보다 작습니다." ;
}
?>

여러 개가있을 수 있습니다 elseif같은 안에 있어 만약에성명 첫번째 elseif다음으로 평가되는 표현식(있는 경우) 진실처형될 것이다. PHP에서는 "else if"(두 단어)를 쓸 수도 있으며 동작은 "elseif"(한 단어)의 동작과 동일합니다. 구문적 의미는 약간 다르지만(C에 익숙하다면 이는 동일한 동작임) 결론적으로 둘 다 정확히 동일한 동작을 초래한다는 것입니다.

그만큼 elseif명령문은 이전의 경우에만 실행됩니다. 만약에표현식 및 그 이전의 모든 것 elseif평가된 표현식 거짓, 그리고 현재 elseif다음으로 평가된 표현식 진실.

메모: 참고하세요 elseif그리고 그렇지 않으면위의 예에서와 같이 중괄호를 사용하는 경우에만 정확히 동일한 것으로 간주됩니다. 콜론을 사용하여 정의하는 경우 만약에/elseif조건에 따라 분리하면 안 됩니다. 그렇지 않으면그렇지 않으면 PHP는 구문 분석 오류로 인해 실패합니다.

/* 잘못된 방법: */
($a > $b)인 경우:
else if ($a == $b ): // 컴파일되지 않습니다.
에코 "위 줄은 구문 분석 오류를 발생시킵니다.";
종료;

/* 올바른 방법: */
($a > $b)인 경우:
에코 $a . "보다 크다" $b ;
elseif($a == $b): // 단어의 조합에 주목하세요.
에코 $a . "같음" $b ;
또 다른:
에코 $a . "보다 크거나 같지 않습니다". $b ;
종료;

따라서 우리는 변수를 생성하고 표시하는 방법을 이미 알고 있습니다. 또한 우리는 이미 PHP에서 변수가 서로 어떻게 상호 작용하는지에 대한 명확한 아이디어를 가지고 있습니다. 이제 PHP에서 매우 중요한 IF-ELSE(if - else) 구성으로 넘어갈 시간입니다.

이 구성의 작업 구문은 다음과 같습니다.

IF(조건) - 조건이 참이면
{
행위
}
else - 조건이 거짓이면 실행됩니다.
{
행위
}
?>

구체적인 예를 사용하여 구조가 어떻게 작동하는지 살펴보겠습니다.

$c = 3;
$d = 5;
if ($c ==$d)
{
echo "변수가 동일합니다.";
}
또 다른
{
echo "변수가 동일하지 않습니다.";
}
?>

처음에는 변수 $c와 $d에 다른 값을 할당했음을 알 수 있습니다. 그런 다음 조건을 설정하고 이러한 변수가 서로 같은지 확인합니다. 그리고 동일하지 않기 때문에 else 부분과 echo 문이 트리거됩니다. 즉, 이 코드를 실행한 결과는 화면에 다음과 같이 표시됩니다. - 변수가 동일하지 않습니다. 궁금한 점이 있으면 물어보세요! 기꺼이 답변해 드리겠습니다.

이중 IF-ELSE 조건

위에 제시된 구문은 단일 조건 IF-ELSE 구문이라고도 합니다. 이제 위에 제시한 예제를 복잡하게 만들고 조건을 하나 더 추가해 보겠습니다. 이를 위해 예제를 1개 더 만들지만 이미 이중 IF-ELSE 조건을 적용하겠습니다.

$c = 3;
$d = 5;
$e = 8;
$k = 10;
if ($c !=$d 및 $e !=$k)
{
echo "변수가 동일하지 않습니다.";
}
또 다른
{
echo "변수가 동일합니다.";
}
?>

PHP에서 != -는 "같지 않음"을 의미한다는 점에 주목하고 싶습니다.
PHP의 이중 조건은 부울 함수를 사용하여 생성됩니다.

  • and (논리적 and, 또한 PHP를 사용하면 and 대신 &&를 쓸 수 있습니다);
  • 또는 (논리적 or, PHP에서는 or 대신 ||를 쓸 수도 있습니다).

프로그램을 실행한 결과 "변수가 동일하지 않습니다."라는 메시지가 표시됩니다.



질문이 있으신가요?

오타 신고

편집자에게 전송될 텍스트: