if (!
is_string($value) && !
is_int($value) && !
is_float($value) &&
!
is_array($value) && !
($value instanceof Zend_Date
)) { $this->
_error(self::INVALID
);
return false;
} $this->
_setValue($value);
if (($this->_format !== null
) || ($this->_locale !== null
) ||
is_array($value) ||
$value instanceof Zend_Date
) { if (!Zend_Date::
isDate($value,
$this->_format,
$this->_locale
)) { if ($this->
_checkFormat($value) === false
) { $this->
_error(self::FALSEFORMAT
);
} else { $this->
_error(self::INVALID_DATE
);
} return false;
} } else { if (!
preg_match('/^\d{4}-\d{2}-\d{2}$/',
$value)) { $this->_format = 'yyyy-MM-dd';
$this->
_error(self::FALSEFORMAT
);
$this->_format = null;