<?php 
 
$value = ''; 
// Check booleans 
if ($value === true) {} 
if ($value == true) {} 
if (true === $value) {} 
if (true == $value) {} 
 
if($value === true){} 
if($value == true){} 
if(false === $value){} 
if(!false == $value || true !== $value){} 
 
// check integer comparison 
if($value === 5){} 
if($value == 5){} 
if(5 === $value){} 
if(5 == $value){} 
 
// check float comparison 
if($value === 5.2){} 
if($value == 5.2){} 
if(5.2 === $value){} 
if(5.2 == $value){} 
 
// check null comparison 
if($value === null){} 
if($value == null){} 
if(null === $value){} 
if(null == $value){} 
 
if( 
    $value 
    === 
    null 
){} 
if( 
    null 
    === 
    $value 
){} 
 
// check string comparison 
if($value === 'string'){} 
if($value == 'string'){} 
if('string' === $value){} 
if('string' == $value){} 
 
if([] === $value){} 
if($value === [] ){} 
if([] == $value){} 
if($value == [] ){} 
 
if($value === array()){} 
if($value == array()){} 
if(array() === $value){} 
if(array() == $value){} 
 
// check string comparison 
$assigned = $value === 'string'; 
$assigned = 'string' == $value; 
 
if(($value) === $otherValue){} 
if($value === ($otherValue)){} 
 
if(($value) === true){} 
if((true) === $value){} 
 
if(($value + 1 + 1) === $value){} 
if(($value + $value) === $value){} 
 
if($value == self::CONSTANT_1){} 
 
const CONSTANT1 = 1; 
if($value === CONSTANT1){} 
if(CONSTANT1 === $value){} 
 
if($value === ($value1 | $value2)){} 
if(($value1 | $value2) === $value){} 
 
// Check with objects 
if($object->myVar === $value){} 
if($value === $object->myVar){} 
 
if($object->function() === $value){} 
if($value === $object->function()){} 
 
// Check with functions 
if(myFunction() === $value){} 
if($value === myFunction()){} 
 
// check with multiple operations 
if($value === true && $value === 1 && $value === null){} 
if(($value === true && $value === 1) == ($value === null && $value === new stdClass())){} 
 
if(true === $value && 1 === $value && null === $value){} 
if((true === $value && 1 === $value) == (null === $value && new stdClass() === $value)){} 
 
// Add comments in the middle 
if( 
    //comment 
    true 
    // comment 
    === 
    // comment 
    $value 
){} 
 
if( 
    //comment 
    $value 
    // comment 
    === 
    // comment 
    true 
){} 
 
if(array($key => $val) === $value){} 
if(array($key => $val) == $value){} 
 
if([$key => $val] === $value){} 
if([$key => $val] == $value){} 
 
$config['checkAuthIn'] !== $event->getName(); 
 
if ($var === "ab" || 'cd') {} 
if ("ab" || 'cd' === $var) {} 
if (2 > $value || 3 < $var) {} 
if ($value == true && (/* comment */ 2 > test())) {} 
if ((int) 5 > $var) {} 
if ((int) $var > (int) 5) {} 
if (true == function() { return false;}){} 
if (function() { return false;} == true){} 
 
if (is_array($val) 
    && array($foo) === array($bar) 
    && [$foo] === [$bar] 
    && array('foo', 'bar') === array($foo, $bar) 
    && ['foo', 'bar'] === [$foo, $bar] 
    && array('foo' => true, 'bar' => false) === array(getContents()) 
    && ['foo' => true, 'bar' => false] === array(getContents()) 
    && array(getContents()) === ['foo' => true, 'bar' => false] 
) { 
} 
 
if ($this->cfg['some_closure']() == 2) { 
} 
 
if (is_array($val) 
    && array(get_class($val[0]), $val[1]) == array('someNamespace\\className', 'method') 
) { 
} 
 
if (is_array($val) 
    && array('someNamespace\\className', 'method') == array(get_class($val[0]), $val[1]) 
) { 
} 
 
if ([function() { echo 'hi'; }] === [$foo] 
    && [$foo] === [function() { echo 'hi'; }] 
    && [function() { echo 'hi'; }, $bar] === [$foo] 
    && [$foo] === [function() { echo 'hi'; }, $bar] 
) { 
} 
 
echo match (5 == $num) { 
    true => "true\n", 
    false => "false\n" 
}; 
 
echo match ($text) { 
    'foo' => 10 === $y, 
    10 === $y => 'bar', 
}; 
 
1 ?? $nullCoalescingShouldNotTriggerSniff; 
 
1 + 2 === $sniffBailsArithmeticToken; 
 
'string' . 'concat' === $sniffBailsStringConcatToken; 
 
1 != $value; 
1 <> $value; 
1 >= $value; 
1 <= $value; 
1 <=> $value; 
 
 |