在 Laravel 中添加迄今为止的天数

问题描述 投票:0回答:6

我是 Laravel 的初学者。我在我的项目中使用 Laravel 5.8。

我有这个代码:

$userPromotionDays = $user->premiumDate; // 2019.08.28
$daysToAdd = 5

如何将 $userPromotionDays 添加到 $daysToAdd (在 Laravel/Carbon 中)?

php laravel laravel-5
6个回答
13
投票

您可以使用自定义格式创建日期,然后使用 Carbon 添加天数。

$date =2024-08-08;
$daysToAdd = 5;
$date = $date->addDays($daysToAdd);
dd($date);

您可以在此处查看详细文档。


6
投票

Laravel 使用 nesbot.com 名为

Carbon
的包,这就是添加天数的方法:

$user->premiumDate->addDays(5);

https://carbon.nesbot.com/docs/#api-addsub

仅当您将字段

premiumDate
转换为模型中的日期字段时,这才有效。

https://laravel.com/docs/5.8/eloquent-mutators#date-mutators


5
投票

如果您的日期是carbon实例,您可以像这样向您的日期添加日期:

$userPromotionDays->addDays($daysToAdd);

如果您的日期不是 Carbon 实例,请启动它:

$userPromotionDays = Carbon::createFromFormat('Y.m.d', $user->premiumDate);
$userPromotionDays->addDays($daysToAdd);

未经测试,但应该可以工作。


2
投票

使用此代码

date("Y-m-d", strtotime('+ '.daysToAdd , strtotime($userPromotionDays)));

检查此链接 向特定日期添加天数


0
投票

您可以使用

addDays()
Carbon
方法。首先使用
Carbon
创建一个
createFromFormat
日期对象,然后添加天数。

Carbon::createFromFormat('Y.m.d', $user->premiumDate)->addDays($daysToAdd);

0
投票

无碳

有关完整示例,请访问 - https://www.php.net/manual/en/datetime.add.php

以下代码仅适用于添加天数

$d->add(new DateInterval('P10D'));

date_default_timezone_set("Asia/Kolkata");
$fineStamp = date('Y-m-d\TH:i:s').substr(microtime(), 1, 9);
$d = new DateTime($fineStamp);
$d->add(new DateInterval('P10D'));
$date=$d->format('Y-m-d H:i:s.u').PHP_EOL;
return substr($date, 0, -2);
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.