Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP에서 &&와 AND 연산자의 비교.

<시간/>

PHP는 산술, 할당, 비교 등의 연산을 수행할 수 있는 놀라운 연산자를 제공합니다. 이 기사에서는 논리 연산자 "&&" 및 "AND"를 더 중요하게 생각하고 논리 연산자를 기반으로 활용하는 방법을 연구합니다. 상위. 논리 연산자 "&&" 및 "AND"는 결과로 참 또는 거짓을 생성하므로 부울 연산자라고도 합니다.

자세히 알아보기 전에 "AND" 연산자가 무엇인지 알아볼까요? "AND" 연산자는 두 조건이 모두 참인 경우에만 참을 반환합니다. "AND" 연산자를 보여주는 예를 들어보겠습니다.

예시

<?php
   $val1 = 20;
   $val2 = 50;
   if ($val1 == 20 and $val2== 50)
      echo "True";
   else
      echo "False";
?>

출력:

True

설명:

변수 $val1 =20 및 $val2 =50이므로 $val1 ==20 조건은 true로 평가되고 $val2 ==50도 true로 평가됩니다. 따라서 두 피연산자가 모두 true이고 결과도 true입니다. 다른 예를 살펴보겠습니다.

예시 2:

<?php
   $a = 30;
   $b = 50;
   if ($a == 30 and $b == 10)
      echo "True";
   else
      echo "False";
?>

출력:

False

설명:

변수 $a =30 및 $b =50을 선언했기 때문에 $a ==30 조건은 true로 평가되지만 선언에서 $b =50을 입력하고 false를 반환하는 조건 $b ==10에서는 AND 연산 결과는 거짓이 됩니다.

이제 "&&" 연산자가 제공되며 "AND" 연산자와 동일하게 작동하며 표현식에서 두 조건/피연산자가 모두 참이면 true를 반환합니다. 이제 "&&" 연산자를 구현한 아래의 예를 살펴보겠습니다.

예:

<?php
   $val1 = 25;
   $val2 = 5;
   if ($val1 == 25 && pow($val2, 2) == $val1)
      echo "True";  
   else
      echo "False";
?>

출력:

True

설명:

변수 $val1 =25 및 $val2 =5이므로 $val1 ==25 조건은 true로 평가되고 pow($val2, 2) ==$val1도 마찬가지로 true로 평가됩니다. $val2=5가 2의 거듭제곱이기 때문입니다. 25는 $val1과 같습니다. 따라서 '$val1 ==25&&pow($val2, 2) ==$val1'은 두 피연산자가 모두 참인 경우에만 AND 연산 결과가 참이라는 AND 논리 상태로 참으로 평가됩니다.

참고:

다른 경우를 가정해 보겠습니다. 입력 $val2 =20을 선언하면 pow($val2, 2) ==$val1 조건이 false가 되므로 AND 연산 결과는 false가 됩니다.

이제 우선 순위 측면에서 "AND"와 "&&" 연산자의 비교에 대해 논의합니다. 연산은 표현식에서 연산자의 우선 순위에 따라 수행됩니다. '&&' 연산자의 우선 순위는 높고 "AND" 연산자의 우선 순위는 낮습니다. 위의 차이점을 아래 예시를 통해 공부해 봅시다.

<?php
   $a =10;
   $b = NULL;
   $val = $a && $b;
   echo ($val ? 'TRUE' : 'FALSE'),"\n";
   $val = $a and $b;
   echo ($val ? 'TRUE' : 'FALSE');
?>

출력:

False

설명:

두 연산자의 결과는 피연산자가 같을 때마다 다릅니다. 둘 다 유사한 활동을 사용하고 있음에도 불구하고 첫 번째 표현은 FALSE로 표현되고 두 번째 표현은 TRUE로 표현됩니다.

첫 번째 표현식 $val =$a &&$b; 첫 번째 "&&" 작업이 수행된 다음 &&연산자의 우선 순위가 "=" 연산자의 우선 순위보다 높기 때문에 결과가 $val 변수에 할당되므로 FALSE로 표시됩니다.

두 번째 표현식 $bool =$a 및 $b; 연산자 "and"는 연산자 "="보다 우선 순위가 낮기 때문에 =오른쪽에 있는 변수 $a =10의 값이 $val에 할당되므로 $val은 10을 보유하고 "and"는 " 작업은 내부적으로 수행되지만 할당되지 않으므로 $val은 이제 TRUE를 유지합니다.

명확하게 하기 위해 "AND" 연산자와 "&&" 연산자의 주요 차이점은 우선 순위이지만 둘 다 유사한 활동을 수행한다는 것입니다.