📅  最后修改于: 2023-12-03 14:51:00.051000             🧑  作者: Mango
在 Laravel 中,我们通常使用 Eloquent ORM 来操作数据库。默认情况下,Eloquent 会自动管理记录的创建时间和更新时间,它们被称为“时间戳”(Timestamps)。如果您需要手动插入时间戳,本文将向您介绍如何实现。
如果您需要手动插入创建时间戳,只需将 created_at
列的值设置为当前时间即可:
$record = new Record;
$record->name = 'John Doe';
$record->created_at = now();
$record->save();
在上面的示例中,我们创建了一个名为 Record
的模型实例,并设置了 name
属性和 created_at
属性。最后,我们调用 save
方法保存记录。
如果您需要在保存记录前手动设置 created_at
值,可以使用 freshTimestamp
方法来获取当前时间戳:
$record = new Record;
$record->name = 'John Doe';
$record->created_at = $record->freshTimestamp();
$record->save();
如果您需要手动插入更新时间戳,只需将 updated_at
列的值设置为当前时间即可:
$record = Record::find(1);
$record->name = 'Jane Doe';
$record->updated_at = now();
$record->save();
在上面的示例中,我们获取了 ID 为 1 的记录,并将 name
属性更改为 "Jane Doe",然后设置了 updated_at
属性。最后,我们调用 save
方法保存记录。
与创建时间戳类似,如果您需要在保存记录前手动设置 updated_at
值,可以使用 freshTimestamp
方法来获取当前时间戳:
$record = Record::find(1);
$record->name = 'Jane Doe';
$record->updated_at = $record->freshTimestamp();
$record->save();
在 Laravel 中手动插入时间戳非常容易。只需设置 created_at
或 updated_at
属性的值即可。如果您需要在保存记录前手动设置时间戳值,可以使用 freshTimestamp
方法。