3v4l.org

run code in 300+ PHP versions simultaneously
<?php $test = function (): bool { var_dump(__FUNCTION__ . ' is called'); return true; }; define('TEST', false); var_dump('Valuate TEST constant'); if(defined('TEST') && $test()) { var_dump('Test is called'); } echo PHP_EOL; echo PHP_EOL; var_dump('Valuate DOES_NOT_EXISTS constant'); if(defined('DOES_NOT_EXISTS') && $test()) { var_dump('Should not be called'); }
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
string(21) "Valuate TEST constant" string(19) "{closure} is called" string(14) "Test is called" string(32) "Valuate DOES_NOT_EXISTS constant"

preferences:
98.78 ms | 402 KiB | 89 Q