为了账号安全,请及时绑定邮箱和手机立即绑定

你如何使用 Carbon 获得第一天和最后一天以及只有年和月?

你如何使用 Carbon 获得第一天和最后一天以及只有年和月?

PHP
米脂 2022-10-14 10:49:48
我只有两个字符串,年和月。我需要在第一天和最后一天使用 Carbon。例如,提供了“2020”和“3”。我需要从中获得 2 个碳日期(2020-3-1 和 2020-3-31)。可能吗?
查看完整描述

4 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

要实现您的目标,请使用以下代码:


use Carbon\Carbon; // imports the Carbon class

$year = 2020;

$month = 3;

$date_1 = Carbon::create($year, $month)->startOfMonth()->format('Y-m-d'); //returns 2020-03-01

$date_2 = Carbon::create($year, $month)->lastOfMonth()->format('Y-m-d'); //returns 2020-03-31

快乐编码:)


查看完整回答
反对 回复 2022-10-14
?
郎朗坤

TA贡献1921条经验 获得超9个赞

根据碳文档

Carbon::create($year, $month, $day, $hour, $minute, $second, $tz);

唯一的特殊情况是,当您显式传递 null 时create(),将最小值作为缺少参数的默认值,但默认值为当前值。

因此,如果您仅通过$year并且 $month 它会自动考虑第一天,然后您可以format()使用它以将第一天作为一天,例如

Carbon::create($year, $month)->format("Y-m-d")


查看完整回答
反对 回复 2022-10-14
?
慕容708150

TA贡献1831条经验 获得超4个赞

您可以使用以下碳方法简单地做到这startOfMonth一点endOfMonth

$startOfMonth=\Carbon\Carbon::parse('2020-3')->startOfMonth()->format('Y-n-d');
$endOfMonth=\Carbon\Carbon::parse('2020-3')->endOfMonth()->format('Y-n-d');


查看完整回答
反对 回复 2022-10-14
?
FFIVE

TA贡献1797条经验 获得超6个赞

我使用这种方法来获取每月的第一天和最后一天。


t表示该月的最后一天。


$posts = Post::whereBetween('created_at', [

Carbon::createFromDate(date('Y-m-d 00:00:00', strtotime(request('year') . '-' . request('month') . '-1'))),

Carbon::createFromDate(date('Y-m-d 23:59:59', strtotime(request('year') . '-' . request('month') . '-t')))])

->get();


return $posts

编辑: 我使用+,php但很.抱歉。


或者你可以使用这个:


$this->client = $this->client->whereBetween('created_at', [

Carbon::createFromDate(date(request('year') . '-' . request('month') . '-01 00:00:00')),

Carbon::createFromDate(date(request('year') . '-' . request('month') . '-12 23:59:59'))])

->get();

编辑:(编辑:)


根据您的问题,您需要获得第一天和最后一天。但在现实世界中,第一天是给定的,所以你只需要得到最后一天。应该是这样的。


应该给出第一天,因为我们都知道它下降到 1。


$firstDayOfTheMonth = date(request('year') . '-' . request('month') . '-1 00:00:00');


$lastDayOfTheMonth = date(request('year') . '-' . request('month') . '-t 23:59:59');



查看完整回答
反对 回复 2022-10-14
  • 4 回答
  • 0 关注
  • 510 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信