Home > Article > Backend Development > Simple comparison of equation (==) and identity (===) operators in PHP
Equality (==) and identity (===) are both PHP comparison operators, so what are the differences between them? The following article will give you a brief comparison between equation (==) and identity (===). I hope it will be helpful to you. [Tutorial recommendation: PHP tutorial]
##Equality (==) operator
The equality (==) operator compares and tests whether the variable (expression or constant) on the left has the same value as the variable (expression or constant) on the right; the comparison performed by this operator is loose of. If the two values are the same (it only compares the value of the variable, not the data type), it returns a true value; if the two values are not the same, it returns a false value. Note: The equality (==) operator and the assignment (=) operator are different. The assignment (=) operator changes the variable on the left, assigning the variable on the right to the variable on the left, while the equality (==) operator tests for equality and returns true or false depending on the comparison.Example:
<?php header("content-type:text/html;charset=utf-8"); // 给变量赋整数值 $x = 999; echo '$x='.$x."<br>"; // 给变量赋字符串值 $y = '999'; echo '$y='.$y."<br>"; //比较$x 和$y if ($x == $y) echo '$x和$y的值相等'; else echo '$x和$y的值不相等'; ?>Output:
Instructions:In the above example , because the equality (==) operator only compares the values of variables, the values of $x and $y are equal, so the statement in the if is directly executed, and the else statement is not executed.
Comparison chart of PHP equation (==) operators:
Equality (== =) Operator
The identity (===) operator performs a strict comparison between given variables or values; it compares and looks at two variables (expressions or constants ) if the values are equal and have the same data type, i.e. both are strings or both are integers etc. This operator returns true if two variables (expressions or constants) contain the same value and the same data type, otherwise it returns false.Example:
<?php header("content-type:text/html;charset=utf-8"); // 给变量赋整数值 $x = 999; echo '$x='.$x."<br>"; // 给变量赋字符串值 $y = '999'; echo '$y='.$y."<br>"; //比较$x 和$y if ($x === $y) echo '$x和$y相等'; else echo '$x和$y不相等'; ?>Output:
Explanation:at In the above example, the values of $x and $y are equal but the data types are different, so false is returned and the else part is executed.
Comparison chart of PHP identity (===) operators:
The above is the entire content of this article, I hope It can be helpful to everyone’s study. For more exciting content, you can pay attention to the relevant tutorial columns of the PHP Chinese website! ! !The above is the detailed content of Simple comparison of equation (==) and identity (===) operators in PHP. For more information, please follow other related articles on the PHP Chinese website!