我试图验证两个日期,以确保一个日期大于另一个日期,使用after验证规则。我的规矩是这样的:
$rules = array(
'date_from' => 'required|date_format:"d/m/Y"',
'date_to' => 'required|date_format:"d/m/Y"|after:date_from',
// more rules ...
);但是,当使用以下值时:date_from = "01/06/2014“和date_to = "01/06/2014”或date_to = "12/06/2014“,但一切都是很棒的。任何超过12天的使用都会失败,如date_to = "13/06/2014“到date_to = "31/06/2014”
我也试过这样做,结果是一样的:
$dateFromForm = Input::get('date_from');
$rules = array(
'date_from' => 'required|date_format:"d/m/Y"',
'date_to' => 'required|date_format:"d/m/Y"|after:' . $dateFromForm,
);对我来说很明显,它是把这一天当作月,有什么想法我做错了吗?
谢谢
发布于 2014-06-05 14:23:49
如果你看看Laravel的文档-上面写着
日期将传递到PHP strtotime函数中。
strtotime的问题在于它假设您正在使用m/d/Y。如果您想要d/m/Y -您需要将它更改为d-m-Y才能正确解析。
因此,将您的日期格式更改为d-m-Y,它将工作。
https://stackoverflow.com/questions/24062639
复制相似问题