我为产品编写了Laravel 5拍卖出价脚本。
如果我想创建新产品,我可以输入"结束日期"对于拍卖,但我总是得到这个错误:
"无效的结束日期"
我已经尝试了所有日期变体但没有一个有效。
我在ProductController中的拍卖结束日期代码:
if (validateDate($request->end_date)) {
$end_date = DateTime::createFromFormat('Y-m-d\TH:i',$request->end_date);
$now = date('Y-m-d\TH:i');
$end_date1 = date_format($end_date,'Y-m-d\TH:i');
if ($end_date1 < $now) {
session()->flash('errormessage','Invalid end date');
return redirect()->back()->withInput();
}
我以这种格式输入日期和时钟:
结束日期和时间
2017年10月22日\ 15:00
答案 0 :(得分:1)
您格式中的\T
表示您期待文字&#34; T&#34;而不是格式&#34; T&#34; (时区缩写)。因此,您需要输入日期为&#34; 2017-10-22T15:00&#34;
答案 1 :(得分:0)
我希望你使用的是Mysql
如果列类型为MatDialogModule
,则必须为
datetime
如果列类型为2017-09-24 05:03:24
,则必须为
date
如果您使用的是mysql,那么您的日期格式无效
答案 2 :(得分:0)
如果您已为此结束日期创建了迁移
$table->dateTime('end_date');
然后你需要从这种格式创建日期:
$end_date = DateTime::createFromFormat('Y-m-d H:i:s',$request->end_date);
这会给你
2017-10-22 15:00:00
如果您为结束日期创建了迁移,请执行以下操作:
$table->dateTimeTz('end_date');
然后使用此格式
$end_date = DateTime::createFromFormat('Y-m-dTH:i:s',$request->end_date);
这会给你这样的end_date
2017-10-22T15:00:00
答案 3 :(得分:0)
全心全意感谢您的帮助!
多数民众赞成正确:
2017-10-22T15:00