PHP Carbon 日期处理

时间:2021-10-11
本文章向大家介绍PHP Carbon 日期处理,主要包括PHP Carbon 日期处理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1. composer安装Carbon

composer require nesbot/carbon

2. 使用示例

<?php
use Carbon\Carbon;

echo Carbon::now();                   //当前时间  2021-10-09 16:29:15
echo Carbon::now()->toDateTimeString();  //当前时间  2021-10-09 16:29:15

echo Carbon::today();                            //今天      2021-10-09 00:00:00
echo Carbon::parse('today')->toDateTimeString(); //今天的日期 2021-10-09 00:00:00
echo Carbon::now()->toDateString();              //今天      2021-10-09

echo Carbon::tomorrow();            // 明天 2021-10-10 00:00:00 
echo Carbon::yesterday();           // 昨天 2021-10-08 00:00:00 

echo Carbon::createFromDate(2021, 05, 21);     //创建指定日期 2021-05-21 16:29:15
echo Carbon::create(2021, 05, 21, 20, 00, 00); //创建指定日期 2021-05-21 20:00:00

echo Carbon::now()->addHours(1);               // 1小时后同一时间 2021-10-09 17:29:15
echo Carbon::now()->subHours(2);                 // 2小时前同一时间 2021-10-09 14:29:15
echo Carbon::now()->addHours(2)->addMinutes(1);  // 2小时后+1分钟  2021-10-09 18:30:15
echo Carbon::now()->addDays(1);                 // 1天后同一时间  2021-10-10 16:29:15
echo Carbon::now()->modify('+1 days');           // 1天后同一时间  2021-10-10 16:29:15
echo Carbon::now()->modify('-1 days');           // 1天前同一时间  2021-10-08 16:29:15
echo Carbon::now()->addWeeks(1);                 // 1周后同一时间  2021-10-16 16:29:15
echo Carbon::parse('2021-10-09 +10 days')->toDateTimeString() . PHP_EOL;   // 10天后 2021-10-19 00:00:00
$day = new Carbon();
echo $day;                    // 2021-10-09 16:29:15
echo $day->toDateString();    // 2021-10-09
echo $day->format('Y');       // 2021
echo $day->format('m');       // 10
echo $day->format('d');       // 09
echo $day->dayOfWeek;         // 6(周6)
echo $day->format('m') . '月' . $day->format('d') . '日';   //10月09日

日期比较between():判断一个日期是否在两个日期之间(第三个可选参数指定比较是否可以相等,默认为 true)

$start = Carbon::create(2021, 05, 20, 5);   // 2021-05-20 05:00:00
$end   = Carbon::create(2021, 05, 20, 10);    // 2021-05-20 10:00:00
var_dump(Carbon::create(2021, 05, 20, 07)->between($start, $end));         // bool(true)
var_dump(Carbon::create(2021, 05, 20, 10)->between($start, $end));         // bool(true)
var_dump(Carbon::create(2021, 05, 20, 10)->between($start, $end, false));  // bool(false)

计算指定日期的差值:

diffInYears(年);diffInMonths(月);diffInDays(日);

diffInHours(时);diffInMinutes(分);diffInSeconds(秒);

$taday     = Carbon::now();                // 2021-10-09 16:29:15
$yesterday = Carbon::parse('yesterday');   // 2021-10-08 00:00:00
echo  $yesterday->diffInYears($taday, false);  //返回为正负数 1
echo  $taday->diffInDays($yesterday, false);   // -1
echo  $taday->diffInDays($yesterday, true);    // 1

  

  

原文地址:https://www.cnblogs.com/php-han/p/15386550.html