Carbon - 仅获取时间戳的部分

3

我在数据库中有一个时间戳:

2017-10-01 04:32:37

现在,我需要提取出日期,比如“01/10”

我正在使用Laravel的Carbon库尝试实现这个功能,有人能告诉我怎么做吗?我在文档中没有找到相关内容,这似乎是不可能的?

我想用Carbon来完成这个任务。

4个回答

1

我已经很久没有使用PHP和Laravel了,所以我的理解可能有误。但是你可以使用$carbon->format("format string")来从Carbon实例中创建任何字符串。

我猜你可以这样做:

Carbon::now()->format("d/m");

1

字段created_atupdated_at以Carbon对象形式返回,您可以直接按照以下方式格式化这些属性

$user = App\User::find(1);
// created at value
// 2017-12-20 06:30:25
$user->created_at->format('d/m');
// will return
// 20/12

如果您有自定义的日期属性,您可以使用 Carbon::parse() 方法来处理,如下所示。
$approvedAt = '2017-10-02 05:30:00';
$initDate = Carbon::parse($approvedAt);
$approvedAtFormated = $initDate->format('d/m');
// will return
// 02/10

0

你可以使用格式

$re=  Carbon::createFromFormat('Y-m-d H:i:s','2017-10-01 04:32:37')->format('d/m');
 dd($re);

输出

   "01/10"

你也可以使用

 $updated_at=Carbon::parse( '2017-10-01 04:32:37')->format('d/m');;
      dd($updated_at);

输出

"01/10"

如果您正在转换updated_atcreated_at,那么您可以直接使用Carbon格式化日期时间。

例如:

$blogTag=Tag::retrieveTagById(1);
dd($blogTag->created_at->format('d/m'));

输出将会是

"01/10"

0
如 Carbon 文档中 "字符串格式化" 部分 所述,我们可以使用 format() 方法来生成 PHP 可以理解的任何格式:
Carbon::parse('2017-10-01 04:32:37')->format('d/m');
// "01/10"

Carbon支持与PHP的strtotime()函数和DateTime类相同的格式符号

Laravel会自动将模型中声明在$dates$casts数组中的任何Eloquent模型属性转换为Carbon实例,这使我们可以使用Carbon特定的功能,而无需手动解析日期为Carbon:

$user->created_at->format('d/m');
$user->last_login->format('d/m');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接