如何在 Laravel 5 中从 Carbon 获取当前时间戳

Posted

技术标签:

【中文标题】如何在 Laravel 5 中从 Carbon 获取当前时间戳【英文标题】:How to get Current Timestamp from Carbon in Laravel 5 【发布时间】:2015-12-19 14:44:25 【问题描述】:

我想在 laravel 5 中获取当前时间戳,我已经这样做了-

$current_time = Carbon\Carbon::now()->toDateTimeString();

我遇到错误-“找不到碳”-

我能做什么?

有人可以帮忙吗?

【问题讨论】:

【参考方案1】:

如果你想要日期时间字符串,你可以试试这个:

use Carbon\Carbon;
$current_date_time = Carbon::now()->toDateTimeString(); // Produces something like "2019-03-11 12:25:00"

如果你想要时间戳,你可以试试:

use Carbon\Carbon;
$current_timestamp = Carbon::now()->timestamp; // Produces something like 1552296328

See the official Carbon documentation here.

【讨论】:

【参考方案2】:

对于 Laravel 5.5 或更高版本,只需使用内置帮助器

$timestamp = now();

如果你想要一个 unix 时间戳,你也可以试试这个:

$unix_timestamp = now()->timestamp;

【讨论】:

返回一个unix时间戳。只有now() 将以典型的2018-10-05 17:55:08 格式返回。 @futzlarson now() 实际上返回一个 Carbon 对象。如果您在 Blade 模板中输出它,它将被呈现为字符串,但它基本上是一个完整的、复杂的对象。 是的。出于我的目的,它始终呈现为字符串。【参考方案3】:

您需要在您的 carbon 类之前添加另一个 \ 以在根命名空间中启动。

$current_time = \Carbon\Carbon::now()->toDateTimeString();

另外,请确保 Carbon 已加载到您的 composer.json

【讨论】:

如何在作曲家中加载碳? 通常 Laravel 会在你的 composer.json 文件中自动添加碳。但是,如果您想确定,请尝试通过在应用程序根目录的控制台中键入 composer require nesbot/carbon 来安装它。【参考方案4】:

Laravel 5.2

    use Carbon\Carbon; // You need to import Carbon
    $current_time = Carbon::now()->toDayDateTimeString(); // Wed, May 17, 2017 10:42 PM
    $current_timestamp = Carbon::now()->timestamp; // Unix timestamp 1495062127

此外,这是如何在刀片中更改给定日期和时间的日期时间格式:

\Carbon\Carbon::parse($dateTime)->format('D, d M \'y, H:i')

Laravel 5.6

$current_timestamp = now()->timestamp;

【讨论】:

【参考方案5】:

可能有点晚,但您可以使用辅助函数 time() 来获取当前时间戳。我尝试了这个功能,它完成了工作,不需要类:)。

你可以在https://laravel.com/docs/5.0/templates的官方文档中找到这个

问候。

【讨论】:

【参考方案6】:

在 Class 声明之前使用 \,您正在调用根命名空间:

$now = \Carbon\Carbon::now()->timestamp;

否则它将在类开头声明的当前命名空间中查找它。 其他解决方案是使用它:

use Carbon\Carbon
$now = Carbon::now()->timestamp;

你甚至可以给它分配一个别名:

use Carbon\Carbon as Time;
$now = Time::now()->timestamp;

希望对你有帮助。

【讨论】:

【参考方案7】:
date_default_timezone_set('Australia/Melbourne');   
$time = date("Y-m-d H:i:s", time()); 

【讨论】:

虽然这段代码可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。 请注意此代码与 Laravel 框架无关,此代码可以工作但对这个问题没有帮助,正如@Shree 所写,添加解释会很好。

以上是关于如何在 Laravel 5 中从 Carbon 获取当前时间戳的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Laravel 5.1 中获取前一周的数据?

如何在 Laravel 中从外键中查看表字段

如何在 laravel 5.2 中从 url 中删除 public

如何在 Laravel 5.1 中从 Blade 调用控制器动作?

如何在Laravel 7中设置全局的Carbon格式?

如何比较 DST 与 Laravel / Carbon 更改时的日期