将格式输入 type='date' 从 mm-dd-yyyy 更改为 dd-mm-yyyy Laravel [重复]

Posted

技术标签:

【中文标题】将格式输入 type=\'date\' 从 mm-dd-yyyy 更改为 dd-mm-yyyy Laravel [重复]【英文标题】:Change format input type='date' from mm-dd-yyyy to dd-mm-yyyy Laravel [duplicate]将格式输入 type='date' 从 mm-dd-yyyy 更改为 dd-mm-yyyy Laravel [重复] 【发布时间】:2019-02-23 13:53:35 【问题描述】:

我正在尝试将 laravel 中的日期格式从 mm-dd-yyy 更改为 dd-mm-yyyy

<input type="date" class="form-control" name="joining_date" id="joining_date" required>

我什至尝试输入timezone="[[timezone]]",但没有任何改变。

【问题讨论】:

$model->joining_date->format('Y-m-d') 【参考方案1】:

在像这样输入数据库之前在控制器中转换该日期:

$originalDate = $request->joining_date;
$newDate = date("dd-mm-YYYY", strtotime($originalDate));

或者如果你想在视图中显示相同的日期

 date("dd-mm-YYYY", strtotime($date_from_controller)); 

如果你想预先填充输入字段,那么

<input type="date" class="form-control" name="joining_date" id="joining_date" value=" date("dd-mm-YYYY", strtotime($date_from_controller)); " required> 

如果你想改变输入日期的格式,那么

<input type="text" name="input" placeholder="dd-mm-yyyy" required pattern="(?:30))|(?:(?:0[13578]|1[02])-31))/(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])/(?:19|20)[0-9]2-(?:(?:0[1-9]|1[0-2])">

希望这对您有所帮助。

【讨论】:

【参考方案2】:
Carbon::createFromFormat('mm-dd-yyy', $input)
  ->format('dd-mm-yyyy'); `

【讨论】:

虽然此代码可能会回答问题,但提供有关它如何和/或为什么解决问题的额外上下文将提高​​答案的长期价值。 此外,这并不能解决 op 的问题,因为他想更改输入的格式,而不是输出。【参考方案3】:

你应该试试这个:

$date =  date('d-m-Y', strtotime($request->date));

【讨论】:

【参考方案4】:
date_create_from_format('mm-dd-yyy', $input)->format('dd-mm-yyyy');

【讨论】:

虽然此代码可能会回答问题,但会添加一些解释,说明为什么以及如何提高答案的质量

以上是关于将格式输入 type='date' 从 mm-dd-yyyy 更改为 dd-mm-yyyy Laravel [重复]的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 没有获取日期格式 dd-mm-yyyy

如何检测浏览器的输入格式[type=date]

如何在 YYYY.MM-DD 中更改 Material Datepicker 的格式

来自环回的 mongodb 中格式为 yyyy--mm-dd 的字符串日期上的 gte

fastadmin表格中的日期格式显示问题

如何从 JavaScript 禁用输入 type="date" 的特定日期