这是我的价值,我要插入我的数据库
[phoneinterview] => 2018-05-16 10:28 PM在我的数据库中有这样的字段
phoneinterview timestamp但它的插入方式如下:
2018-05-16 10:28:00 实际上,我想这样插入:
2018-05-16 10:28 PM发布于 2018-05-16 05:28:47
如果在数据库中使用datetime字段,则不能使用,但如果将字段更改为varchar,则可以按自己喜欢的方式保存字段。我建议不要这样做。为什么要节省格式化时间?最好的做法是将日期保存在datetime字段中,然后当您想以您想要的方式显示它的格式时。在Laravel中,您可以使用这样的变形器来完成这个任务:
public function getPhoneinterviewAttribute() {
return \Carbon\Carbon::now(
$this->attributes['phoneinterview']
)->format('g:i A');
}优点:当您扩展到人们不使用AM/PM的区域时,您可以轻松地将其格式化为他们的区域设置。
发布于 2018-05-16 05:27:09
好的。当您选择时间戳或日期时间数据类型来存储日期时,它不会将AM和PM值存储在数据库表字段中。最好的解决方案是检索日期,并与AM/PM一起手动将日期和时间转换为日期和时间。
另一种解决方案是使用varchar的数据类型,而不是时间戳,但这是不可取的。
发布于 2018-05-16 05:30:43
MySQL使用'Y-m-d H:i:s'格式来存储日期,因此如果您使用的不是该格式,则需要首先将其转换为此格式。这可以用日期::createFromFormat()来完成
$date = DateTime::createFromFormat('Y-m-d g:i a', '2018-05-16 10:28 PM');这将创建一个DateTime对象,您可以轻松地为MySQL设置格式:
$date->format('Y-m-d H:i:s');https://stackoverflow.com/questions/50362955
复制相似问题