Run Rector on your code to see what it can do for you:

 <?php
 
-(true xor true) or true; # -> true
-true xor true or true;   # -> true
+(true xor true) || true; # -> true
+(true xor true) || true;   # -> true
 
-true or (true xor true); # -> true
-true or true xor true;   # -> true
+true || (true xor true); # -> true
+true || (true xor true);   # -> true
 
 unset($x);
-true and ($x ?? 42); # -> true
-true and $x ?? 42;   # -> true
+true && ($x ?? 42); # -> true
+true && ($x ?? 42);   # -> true
 
 $x = 42;
-($x ?? 0) and true; # -> true
-$x ?? 0 and true;   # -> true
+($x ?? 0) && true; # -> true
+($x ?? 0) && true;   # -> true
PHP snippet to change

Applied Rules:

Not a change you expect?

Config  rector.php
Rector version: 2.5.4 - released at 2026-07-05 23:08