使用Carbon和Blade计算两个日期之间的差异

有谁知道如何传递给定的变量,而不是Carbon的默认参数?

Carbon的文档说:

// CARBON SAMPLE

$dtToronto = Carbon::createFromDate(2012, 1, 1, 'America/Toronto');

$dtVancouver = Carbon::createFromDate(2012, 1, 1, 'America/Vancouver');

echo $dtVancouver->diffInHours($dtToronto); // 3

我想在控制器中执行以下操作:

  // EXAMPLE

$date = "2016-09-16 11:00:00";

$datework = Carbon::createFromDate($date);

$now = Carbon::now();

$testdate = $datework->diffInDays($now);

并在Blade模板上检索

  // VIEW ON BLADE

<td> {{ $testdate }} </td>

回答:

您没有遵循Carbon文档中的示例。该方法Carbon::createFromDate()需要4个参数:

时区 。您正在尝试传递格式化的日期字符串。

如果要从格式化的日期字符串创建Carbon对象,可以使用该类的构造函数,如下所示:

$date = "2016-09-17 11:00:00";

$datework = new Carbon($date);

或者,您可以使用静态Carbon::parse()方法:

$date = "2016-09-17 11:00:00";

$datework = Carbon::parse($date);

为了您的目的,您可以使用以下完整示例:

$date = Carbon::parse('2016-09-17 11:00:00');

$now = Carbon::now();

$diff = $date->diffInDays($now);

然后在您的Blade模板中:

<td> {{ $diff }} </td>

以上是 使用Carbon和Blade计算两个日期之间的差异 的全部内容, 来源链接: utcz.com/qa/407826.html

回到顶部