我正在尝试验证1996年至1996年之间的日期。 1900年出生日期。它也应该是正确的日期格式
但是这个下面的函数给我输出总是假的。 我做错了什么?
function validateDate($date) {
$this->load->helper('date');
$datestring1 = "%Y-%m-%d";
$date1 = "1996-01-01";
$date2 = "1990-01-01";
$d = DateTime::createFromFormat('Y-m-d', $date);
return $d && $d->format('Y-m-d') == $date && $date > $date2 && $date < $date1;
}
答案 0 :(得分:0)
我不知道您的功能有什么问题,但这应该有效
function validate($date){
$d = DateTime::createFromFormat('Y-m-d', $date);
if($d === false) return false;
$y = intval($d->format('Y'));
return $y >= 1990 && $y < 1996;
}
答案 1 :(得分:0)
如果您希望1988-07-25成为有效的条目(如屏幕截图所示),您的&#34; date2&#34;应该是&#34; 1980&#34;或更早的东西而不是&#34; 1990&#34;。
答案 2 :(得分:0)
你可以试试这个
function validation($date){ //yyyy-mm-dd
$date_element = explode('-', $date);
if(is_array($date_element) and isset($date_element[0]) and ($date_element[0] >= 1990 and $date_element[0] <= 1996)){
return true;
}
return false;
}