Laravel在现场增加30分钟。示例:$ is_expired = $ created_at + 30分钟;

时间:2018-07-24 05:40:16

标签: php laravel laravel-5.4

我想添加两个时间戳,如本例所示:

$created_at = "2018-07-23 12:15:43";
$is_expired = $created_at + 30mins;

$is_expired的内容应为2018-07-23 12:45:43

2 个答案:

答案 0 :(得分:5)

您可以使用Carbon

$is_expired = $created_at->addMinutes(30);

Laravel默认安装了碳,Laravel会自动更改您的日期。

如果日期未更改,则可以使用Carbon::Parse($created_at)

将其解析为Carbon实例。

或者如果您的模型中有$dates = [],则应像这样添加created_at

protected $dates = [
    'created_at',
    'updated_at',
    'deleted_at'
];

答案 1 :(得分:2)

您可以使用核心php函数:

//set timezone
date_default_timezone_set('GMT');

$date = new DateTime();
$created_at = $date->format('U = Y-m-d H:i:s');
$unixTimestamp = time() + 1800; // 30 * 60 

$date = new DateTime();
$date->setTimestamp($unixTimestamp);
$is_expired = $date->format('U = Y-m-d H:i:s');