3v4l.org

run code in 300+ PHP versions simultaneously
<?php $invalid = '2019-03-32'; $invalid2 = '2019-03-30l'; $valid = '2019-03-30'; function is_date($date) { $splitefromdate = explode("-", $date); $fromyear = $splitefromdate[0]; $frommonth = $splitefromdate[1]; $fromdate = $splitefromdate[2]; return checkdate(is_numeric($frommonth), is_numeric($fromdate), is_numeric($fromyear)) && strtotime($date); } var_dump(is_date($invalid)); var_dump(is_date($invalid2)); var_dump(is_date($valid));

preferences:
32.39 ms | 408 KiB | 5 Q