How do the PHP equality (== double equals) and identity (=== triple equals) comparison operators differ?
Equal Operator ==
The comparison operator called Equal Operator is the double equal sign “==”. This operator accepts two inputs to compare and returns true value if both of the values are same (It compares only value of variable, not data types) and return a false value if both of the values are not same.
This should always be kept in mind that the present equality operator == is different from the assignment operator =. The assignment operator changes and assigns the variable on the left to have a new value as the variable on right, while the equal operator == tests for equality and returns true or false as per the comparison results.
Identical Operator ===
The comparison operator called as the Identical operator is the triple equal sign “===”. This operator allows for a much stricter comparison between the given variables or values.
This operator returns true if both variable contains same information and same data types otherwise return false.
Data type or value are different
In the above example, value of $x and $y are equal but data types are different so else part will execute.