Laravel Carbon 时间和日期处理
Laravel 中默认使用的时间处理类就是 Carbon。
//安装
可以通过 Composer 来安装 Carbon: composer require nesbot/carbon PS:由于 Laravel 项目已默认安装了此包,所以不需要再次执行上面的命令。
//使用
你需要通过命名空间导入 Carbon 来使用,而不需每次都提供完整的名称。 use Carbon\Carbon; 获取当前时间 可以同 now() 方法获取当前的日期和时间。
如果你想使用一个不同的时区,你需要传递一个有效的时区作为参数:
例:Carbon::now('UTC') //获取国际标准时间
例:Carbon::now()->timezone('UTC')
// 创建Carbon实例:
Carbon::now():创建当前日期和时间的Carbon实例。
Carbon::today():创建当前日期的整时Carbon实例。
Carbon::tomorrow():创建明天日期的整时Carbon实例。
Carbon::yesterday():创建昨天日期的整时Carbon实例。
Carbon::parse($dateString, 'UTC'):将根据日期字符串创建Carbon实例。
Carbon::createFromTimestamp($dateString, 'UTC'):将根据时间戳创建Carbon实例。
以上输出结果其实是一个 Carbon 类型的日期时间对象:
Carbon {
“date”: “2016-06-14 00:00:00.000000”
“timezone_type”: 3
“timezone”: “UTC”
}
// 格式化日期和时间:
->format($format):将日期和时间格式化为指定的格式。
->toDateString():将日期部分格式化为YYYY-MM-DD。
->toTimeString():将时间部分格式化为HH:MM:SS。
->toDateTimeString():将日期和时间格式化为YYYY-MM-DD HH:MM:SS。
->getTimeStamp(): 将日期和时间格式化为时间戳。
// 修改日期和时间,默认为1:
->addYears($years):增加指定的年数。
->subYears($years):减去指定的年数。
->addMonths($months):增加指定的月数。
->subMonths($months):减去指定的月数。
->addDays($days):增加指定的天数。
->subDays($days):减去指定的天数。
->addHours($hours):增加指定的小时数。
->subHours($hours):减去指定的小时数。
->addMinutes($minutes):增加指定的分钟数。
->subMinutes($minutes):减去指定的分钟数。
->addSeconds($seconds):增加指定的秒数。
->subSeconds($seconds):减去指定的秒数。
->startOfDay():将当前实例时间为 0时0分0秒
->endOfDay():将当前实例时间为 23时59分59秒
->timezone('UTC'):将修改时区
// 比较日期和时间,返回布尔值 :
->isPast():检查日期和时间是否在当前时间之前。
->isFuture():检查日期和时间是否在当前时间之后。
->isToday():检查日期是否为今天。
->isYesterday():检查日期是否为昨天。
->isTomorrow():检查日期是否为明天。
->isNextWeek() 检查日期是否为下周内
->isLastWeek() 检查日期是否为上周内
->isNextQuarter() 检查日期是否为下个季度内
->isLastQuarter() 检查日期是否为上个季度内
->isNextMonth() 检查日期是否为下一个月
->isLastMonth() 检查日期是否为上一个月
->eq(Carbon::tomorrow()):等于。
->ne(Carbon::tomorrow()):不等于
->gt(Carbon::tomorrow()):大于
->gte(Carbon::tomorrow()):
->lt(小于)(Carbon::tomorrow()):小于
->lte(Carbon::tomorrow()):
->between(Carbon::tomorrow(),Carbon::tomorrow()):之间
// 计算两个时间之间差
->diffInSeconds ($carbon, false):返回值为正负数的秒值(默认为绝对值)
->diffInMinutes($carbon);
->diffInHours($carbon);
// 获取日期和时间信息:
->year:获取年份。
->month:获取月份。
->day:获取日期。
->hour:获取小时。
->minute:获取分钟。
->second:获取秒数。
->timestamp:获取Unix时间戳。
更多详细用法,可以参考 Carbon 文档。