Php正则表达式日期验证

Kri*_*ian 2 regex

我正在尝试通过使用正则表达式验证日期输入.

if(!preg_match("/^[0-9]{4}\/[0-9]{2}\/[0-9]{2}$/", $_POST['variant']['sales_start'])) { 
  echo "invalid";
}
Run Code Online (Sandbox Code Playgroud)

我试图输入的字符串是2011-02-03,但它失败了,我似乎无法弄清楚原因.

有人可以告诉我我做错了什么吗?

提前致谢

Kal*_*sin 5

你用破折号分隔日期,正则表达式正在寻找斜线?

尝试

if ( !preg_match( "/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/", $_POST['variant']['sales_start'] ) )
{ 
    echo "invalid";
}
Run Code Online (Sandbox Code Playgroud)