$var="2019/2/19"; if(preg_match('/^([1-9][0-9]{3})\/([1-9]{1}|1[0-2]{1}|[0][1-9])\/([1-9]{1}|[1-2]{1}[0-9]{1}|3[0-1]{1}|[0][1-9])$/', $var)){ echo $var . "正しい日付<br>"; } else { echo $var . "不正の日付<br>"; }
ただ、これvarが2018/2/29でも、2019/2/29でも正しいって出てしまうし、30日しかない月でも31日って入力されてもOKになってしまうんだよね。
まーライブラリーであるんだろうけど。ロジックとしてはわかりました。