今天推荐一款不错的PHP日期和时间处理组件-Carbon

安装

git: https://github.com/briannesbitt/Carbon

可以通过 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天前


2017-10-31/59f819181562f.gif

雷亮博客
请先登陆后发表评论
  • 最新评论
  • 总共0条评论
  • 本站使用thinkphp搭建 © 2014-2016 www.leigougou.com 版权所有 ICP证:蜀ICP备16024789号-1
  • 联系邮箱:1031041088@qq.com