/**
  * {@inheritDoc}
  */
 public function validate($value)
 {
     $date = date_parse($value);
     if (!$date) {
         return false;
     }
     if (!checkdate($date['month'], $date['day'], $date['year'])) {
         return false;
     }
     $target = sprintf('%04d%02d%02d', $date['year'], $date['month'], $date['day']);
     if ($this->rule->getAllowCurrentDate() == true) {
         return $target >= date('Ymd');
     } else {
         return $target > date('Ymd');
     }
 }
 public function date()
 {
     return ValidationConfig::create()->addRequired('必須入力です')->addFutureDate('未来の日付を追加して下さい', FutureDateRule::create()->setAllowCurrentDate(true));
 }