3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting(~(E_WARNING|E_NOTICE)); var_dump(array('foo', 'bar') === 'baz'); // bool(false) - not equal var_dump(array('foo', 'bar') == 'baz'); // bool(false) - still not equal var_dump(strcmp(array('foo', 'bar'), 'baz')); // NULL... var_dump(strcmp(array('foo', 'bar'), 'baz') == 0); // bool(true) - booby trap! var_dump(strcmp(array('foo', 'bar'), 'baz') === 0); // bool(false) - so far, so good... var_dump(strcmp(array('foo', 'bar'), 'baz') > 0); // bool(false) - okay... var_dump(strcmp(array('foo', 'bar'), 'baz') < 0); // bool(false) - lolphpmanual
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.7
bool(false) bool(false) Fatal error: Uncaught TypeError: strcmp(): Argument #1 ($string1) must be of type string, array given in /in/N4hYT:7 Stack trace: #0 /in/N4hYT(7): strcmp(Array, 'baz') #1 {main} thrown in /in/N4hYT on line 7
Process exited with code 255.
Output for 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
bool(false) bool(false) NULL bool(true) bool(false) bool(false) bool(false)
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.1 - 5.1.6, 5.2.0 - 5.2.17
bool(false) bool(false) int(-33) bool(false) bool(false) bool(false) bool(true)
Output for 5.1.0
Fatal error: fatal flex scanner internal error--end of buffer missed in /in/N4hYT on line 12
Process exited with code 255.

preferences:
323.03 ms | 401 KiB | 465 Q