如何比较验证中的日期?

How to compare dates in validation?

我正在尝试比较验证中的日期。文档说这是可能的,但没有记录。 我正在使用注释,我希望一个日期晚于另一个日期。 我该怎么做?

使用strtotime
您可以将日期格式转换为时间戳,然后将两者进行比较

我最终使用如下表达式解决了它:

     /**
     * @var \Datetime
     * @Assert\Type(
     *      type = "\DateTime",
     *      message = "vacancy.date.valid",
     * )
     * @Assert\GreaterThanOrEqual(
     *      value = "today",
     *      message = "vacancy.date.not_today"
     * )
     */
    private $startdate;

    /**
     * @var \Datetime
     * @Assert\Type(
     *      type = "\DateTime",
     *      message = "vacancy.date.valid",
     * )
     * @Assert\GreaterThanOrEqual(
     *      value = "today",
     *      message = "vacancy.date.not_today"
     * )
     * @Assert\Expression(
     *     "this.getEnddate() >= this.getStartdate()",
     *     message="vacancy.date.not_more_than"
     * )
     */
    private $enddate;