3v4l.org

run code in 300+ PHP versions simultaneously
<?php $domains = [ 'a-.bc.com', 'a.bc-.com', 'a.bc.com-', ]; foreach ($domains as $domain) { echo $domain . PHP_EOL; var_dump(filter_var($domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME)); echo PHP_EOL; }
Output for 8.2.26 - 8.2.29, 8.3.14 - 8.3.25, 8.4.1 - 8.4.12
a-.bc.com bool(false) a.bc-.com bool(false) a.bc.com- bool(false)
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.25, 8.3.0 - 8.3.13
a-.bc.com bool(false) a.bc-.com bool(false) a.bc.com- string(9) "a.bc.com-"

preferences:
57.29 ms | 407 KiB | 5 Q