php显示时间的组件,PHP日期和时间处理组件-Carbon

我们使用PHP时经常需要处理日期和时间,有时会被时间时区搞混淆,而Carbon是PHP中很人性化的时间日期处理组件,它继承自 PHP的DateTime 类的 API 扩展,使得处理日期和时间更加简单。

安装

可以通过 Composer 来安装 Carbon:composer require nesbot/carbon

Composer的安装和中国镜像的使用请参照:http://www.phpcomposer.com/

使用

我们通过命名空间导入 Carbon 来使用,而不需每次都提供完整的名称。<?php

require 'vendor/autoload.php';

use Carbon\Carbon;

Carbon提供了许多处理日期和时间的方法,可以满足各种业务需求,以下列出我们常用的处理日期和时间的方法:

1.获取当前时间<?php

$dt = Carbon::now();

$dt->timezone = 'Asia/Shanghai';

echo $dt; // 2017-10-10 13:02:09

2.昨天、今天、明天<?php

$dt = Carbon::now();

$dt->timezone = 'Asia/Shanghai';

echo '昨天: '.$dt->yesterday(); // 昨天: 2017-10-09 00:00:00

echo '今天: '.$dt->today(); // 今天: 2017-10-10 00:00:00

echo '明天: '.$dt->tomorrow(); // 明天: 2017-10-11 00:00:00

3.2017年10月最后一天<?php

echo new Carbon('last day of October 2017'); // 2017-10-31 00:00:00

4.一周前<?php

echo $dt->subWeek(); // 2017-10-03 13:02:09

5.30天后<?php

$dt = Carbon::now();

$dt->timezone = 'Asia/Shanghai';

echo $dt->addDay(30); // 2017-11-09 13:02:09

6.计算年龄(出生于1982-12-12)<?php

$howOldAmI = Carbon::createFromDate(1982, 12, 12)->age;

echo $howOldAmI . '岁'; // 34岁

7.只显示日期<?php

echo Carbon::now()->toDateString(); // 2017-10-10

8.显示国际时间<?php

echo Carbon::now('Europe/London'); // 伦敦时间:2017-10-10 06:02:09

echo Carbon::now('Europe/Paris'); // 巴黎时间:2017-10-10 07:02:09

echo Carbon::now('Asia/Shanghai'); // 北京时间:2017-10-10 13:02:09

echo Carbon::now('America/Vancouver'); // 温哥华时间:2017-10-09 22:02:09

9.2小时后<?php

echo Carbon::now('Asia/Shanghai')->addHours(2); // 2017-10-10 15:02:09

10.显示当前时间戳<?php

echo Carbon::now()->timestamp; // 1507611729

11.人性化显示时间<?php

$ts = Carbon::yesterday()->timestamp;

echo Carbon::createFromTimestamp($ts)->diffForHumans(); // 1天前

Carbon有点类似javascript的moment.js,它继承了PHP的 Datetime 类,所以 Carbon 中没有涉及到的,但在 Datetime 中已经实现的方法都是可以使用的。使用Carbon后你会发现处理日期和时间非常灵活,也非常人性化。

更多有关Carbon的用法请参照Carbon在github上的地址: http://carbon.nesbot.com/docs/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值