Open In App

How do the PHP equality (== double equals) and identity (=== triple equals) comparison operators differ?

Improve
Improve
Like Article
Like
Save
Share
Report

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.
Example: 
 

php




<?php
 
// Variable contains integer value
$x = 999;
 
// Variable contains string value
$y = '999';
 
// Compare $x and $y
if ($x == $y)
    echo 'Same content';
else
    echo 'Different content';
?>


Output: 

Same content

 

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.
Example: 
 

php




<?php
 
// Variable contains integer value
$x = 999;
 
// Variable contains string value
$y = '999';
 
// Compare $x and $y
if ($x === $y)
    echo 'Data type and value both are same';
else
    echo 'Data type or value are different';
?>


Output: 

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.
 



Last Updated : 07 Jan, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads