当前位置: 首页 > Web前端 > HTML

一个简单的PHP时间处理扩展

时间:2023-04-02 13:51:20 HTML

一个简单的DateTime.CarbonPHPAPI扩展使处理日期和时间变得更加容易。处理时区轻松获取时间日期加减法使用英文短语处理时间...使用composerinstall安装,composerrequirenesbot/carbon。添加{"require":{"nesbot/carbon":"~1.18"}}在composer.json中执行composerinstall而无需使用composerstring(26)"2017-11-1500:00:00.000000"["timezone_type"]=>int(3)["timezone"]=>string(3)"PRC"}需要用toDateTimeString()转换成字符串格式var_dump(Carbon::now()->toDateTimeString());使用一些短语来获取时间$knownDate=Carbon::create(2001,5,21,12);//创建测试日期Carbon::setTestNow($knownDate);//设置mockechonewCarbon('tomorrow');//2001-05-2200:00:00...注意时间!echonewCarbon('yesterday');//2001-05-2000:00:00echonewCarbon('下周三');//2001-05-2300:00:00回声newCarbon('上周五');//2001-05-1800:00:00echonewCarbon('这个星期四');//2001-05-2400:00:00使用next()、previous()和modify()时会将小时、分钟和秒设置为00:00:00。要在已知时间获取属性,您可以执行$dt=Carbon::parse('2012-9-523:26:11.123789');var_dump($dt->year);//int(2012)var_dump($dt->month);//int(9)var_dump($dt->day);//int(5)var_dump($dt->hour);//int(23)var_dump($dt->minute);//int(26)var_dump($dt->second);//int(11)var_dump($dt->micro);//int(123789)var_dump($dt->dayOfWeek);//int(3)var_dump($dt->dayOfYear);//int(248)var_dump($dt->月周);//int(1)var_dump($dt->weekOfYear);//int(36)var_dump($dt->daysInMonth);//int(30)var_dump($dt->timestamp);//int(1346901971)常用时间格式$dt=Carbon::create(1975,12,25,14,15,16);echo$dt->toDateString();//1975-12-25echo$dt->toFormattedDateString();//1975年12月25日echo$dt->toTimeString();//14:15:16echo$dt->toDateTimeString();//1975-12-2514:15:16echo$dt->toDayDateTimeString();//Thu,Dec25,19752:15PMecho$dt->format('ljS\\ofFYh:i:sA');//1975年12月25日星期四02:15:16PM$dt=Carbon::now();echo$dt->toAtomString();//1975-12-25T14:15:16-05:00echo$dt->toCookieString();//1975年12月25日星期四14:15:16ESTecho$dt->toIso8601String();//1975-12-25T14:15:16-0500echo$dt->toRfc822String();//周四,25Dec7514:15:16-0500echo$dt->toRfc850String();//星期四,25-Dec-7514:15:16ESTecho$dt->toRfc1036String();//75年12月25日星期四14:15:16-0500echo$dt->toRfc1123String();//1975年12月25日星期四14:15:16-0500echo$dt->toRfc2822String();//1975年12月25日星期四14:15:16-0500echo$dt->toRfc3339String();//1975-12-25T14:15:16-05:00echo$dt->toRssString();//1975年12月25日星期四14:15:16-0500echo$dt->toW3cString();//1975-12-25T14:15:16-05:00时间比较$first=Carbon::create(2012,9,5,23,26,11);$second=Carbon::create(2012,9,5,20,26,11);var_dump($first->eq($second));//bool(false)var_dump($first->ne($second));//bool(true)var_dump($first->gt($second));//bool(true)var_dump($first->gte($second));//bool(true)var_dump($first->lte($second));//bool(false)还可以这样$dt1=Carbon::create(2012,1,1,0,0,0);$dt2=Carbon::create(2014,1,30,0,0,0);echo$dt1->min($dt2);//2012-01-0100:00:00$dt1=Carbon::create(2012,1,1,0,0,0);$dt2=Carbon::create(2014,1,30,0,0,0);回声$dt1->max($dt2);//2014-01-3000:00:00时间增加$dt=Carbon::create(2012,1,31,0);echo$dt->toDateTimeString();//2012-01-3100:00:00echo$dt->addYears(5);//2017-01-3100:00:00echo$dt->addYear();//2018-01-3100:00:00echo$dt->subYear();//2017-01-3100:00:00echo$dt->subYears(5);//2012-01-3100:00:00echo$dt->addDays(29);//2012-03-0300:00:00echo$dt->addDay();//2012-03-0400:00:00echo$dt->subDay();//2012-03-0300:00:00echo$dt->subDays(29);//2012-02-0300:00:00echo$dt->addSeconds(61);//2012-02-0300:01:01echo$dt->addSecond();//2012-02-0300:01:02echo$dt->subSecond();//2012-02-0300:01:01echo$dt->subSeconds(61);//2012-02-0300:00:00多久以前,时差$dt=Carbon::now();$past=$dt->subMonth();$future=$dt->addMonth();echo$dt->subDays(10)->diffForHumans();//10天前echo$dt->diffForHumans($past);//1个月前echo$dt->diffForHumans($future);//一些时间修饰符前1个月,当使用这些修饰符时,一些时间分秒将是23:59:59,$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->startOfDay();//2012-01-3100:00:00$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->endOfDay();//2012-01-3123:59:59$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->startOfMonth();//2012-01-0100:00:00$dt=Carbon::create(2012,1,31,12,0,0);回声$dt->月末();//2012-01-3123:59:59$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->startOfYear();//2012-01-0100:00:00$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->endOfYear();//2012-12-3123:59:59$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->startOfDecade();//2010-01-0100:00:00$dt=Carbon::create(2012,1,31,12,0,0);echo$dt->endOfDecade();//2019-12-3123:59:59更多使用方法参考官网转载地址迷失在你