3v4l.org

run code in 300+ PHP versions simultaneously
<?php foreach([null, '', '0', 'abc', '1', '01', '0.1', '1.5'] as $val) { var_dump($val); var_dump(is_numeric($val)); if ((int) $val) { var_dump(1); } elseif ($val) { var_dump(2); } else { var_dump(3); } }
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
NULL bool(false) int(3) string(0) "" bool(false) int(3) string(1) "0" bool(true) int(3) string(3) "abc" bool(false) int(2) string(1) "1" bool(true) int(1) string(2) "01" bool(true) int(1) string(3) "0.1" bool(true) int(2) string(3) "1.5" bool(true) int(1)

preferences:
55.05 ms | 407 KiB | 5 Q