3v4l.org

run code in 300+ PHP versions simultaneously
<?php string_lt('22', '123'); function string_lt($str1, $str2) { # you can't use < operator for comparing strings # wacky stuff will happen $lt_says = ((string) $str1 < (string) $str2); # see what strcmp() says $strcmp_says = strcmp($str1, $str2); echo "$str 1 less than $str2; lt_says: $lt_says, strcmp_says: $strcmp_says\n"; }
Output for 8.0.1, 8.0.5 - 8.0.7, 8.0.9 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
Warning: Undefined variable $str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 65536
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Warning: Undefined variable $str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 65536
Output for 8.0.0, 8.0.2 - 8.0.3, 8.0.8
Warning: Undefined variable $str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 1
Output for 7.3.30 - 7.3.31, 7.4.20, 7.4.23 - 7.4.33
Notice: Undefined variable: str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 65536
Output for 5.0.4 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 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.29, 7.4.0 - 7.4.16, 7.4.21 - 7.4.22
Notice: Undefined variable: str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 1
Output for 7.3.32 - 7.3.33
1 less than 123; lt_says: 1, strcmp_says: 65536
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.3
Notice: Undefined variable: str in /in/XfRD3 on line 15 1 less than 123; lt_says: 1, strcmp_says: 1

preferences:
284.1 ms | 402 KiB | 463 Q