Home  >  Article  >  Backend Development  >  Simple comparison of PHP operators "and" and "&&"

Simple comparison of PHP operators "and" and "&&"

青灯夜游
青灯夜游Original
2018-12-27 14:41:025129browse

In PHP, "and" and "&&" are both used as logical operators and perform the same operation. So what is the difference between them? This article will give you a brief introduction to the operators "and" and "&&" so that you can understand the difference between the operators "and" and "&&". I hope it will be helpful to you.

Simple comparison of PHP operators

"and" operator

In the "and" operator, if two If both operands are true, return true; if one of the operands is false, return false. Example:

<?php 
// 变量声明和初始化
$a = 100; 
$b = 10; 
  
//使用"and"运算符
if ($a == 100 and $b == 10) 
    echo "结果为:true"; 
else
    echo "结果为:false"; 
?>

Output:

Simple comparison of PHP operators and and &&

Description:

Since variable $a = 100 and another variable $b = 10, the condition $a == 100 evaluates to true, while $b == 10 evaluates to true. Because the and logic says that the result is only true if both operands are true; therefore, '$a == 100 and $b == 10' evaluate to true.

But when $b = 20 is input, the condition $b == 10 will be false, so the AND operation result will be false.

"&&" operator

In the "&&" operator, if both operands are true, true will be returned. ;If one is false, return false. Example:

<?php 
// 声明变量并初始化它
$a = 100; 
$b = 10; 
  
// 使用
if ($a == 100 && pow($b, 2) == $a) 
    echo "结果为:true"; 
else
    echo "结果为:false"; 
?>

Output:

Simple comparison of PHP operators and and &&

Description:

Since variable $a = 100 and another variable $b = 10, the condition $a == 100 evaluates to true, and pow($b,2) == $a also evaluates to true, because $b = 10 raised to the power of 2 is 100, which is equal to $a.

And logic indicates that the result of the AND operation is true only when both operands are true. So the expression '$a == 100 && pow($b, 2) == $a' evaluates to true.

But when $b = 20, the result of the condition pow ($b, 2) == $a is false, so the result of the and operation will become false.

A simple comparison between operators "and" and "&&"

There are some differences between operators "and" and "&&" Difference: The "&&" operator has high precedence, while the "and" operator has low precedence.

Description: Priority basically determines which operations are performed first in an expression.

Let’s take a look at the differences between operators "and" and "&&" through a simple code example.

<?php 
// 在表达式中使用&&运算符
$bool = true && false; 

// 显示&&运算符的运算结果
echo "&&运算符的结果为:";
echo ($bool ? &#39;true&#39; : &#39;false&#39;), "<br><br>"; 
 
// 在表达式中使用and运算符
$bool = true and false; 
// 显示and运算符的运算结果
echo "and运算符的结果为:";
echo ($bool ? &#39;true&#39; : &#39;false&#39;);  
?>

Output:

Simple comparison of PHP operators and and &&

We also found that when the operands of the two operators are the same, their operation results are different. Why?

Because the "&&" operator has a higher priority than the "=" operator; and the "and" operator has a lower priority than the "=" operator.

In the first expression "$bool = true && false", first calculate true && false, the calculation result is false, and then assign this result to $bool; therefore, the value of $bool is : false.

In the second expression "$bool = true and false", first execute "$bool = true", at which time the value of $bool is true; then execute "$bool and false". Because the "and" operation is performed internally but not allocated, the value of $bool is still true.

Summary: The fundamental difference between the PHP operators "and" and "&&" lies in their priority difference; the above is the entire content of this article, I hope it can be helpful to everyone's learning helped.

The above is the detailed content of Simple comparison of PHP operators "and" and "&&". For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn