Php 获取特定月/年的当月第一天
是否有比下面更好的方法返回特定月份/年份的第一天的日期Php 获取特定月/年的当月第一天,php,date,Php,Date,是否有比下面更好的方法返回特定月份/年份的第一天的日期 $month = date('m'); $year = date('Y'); $from = date('Y-m-d', mktime(0, 0, 0, $month, 1, $year)); 这在计算上并不完美,但我喜欢它,因为它可读性很强: strtotime("first day of this month"); 这看起来是对我做这件事的正确方式。不过,您可能希望将它变成一个函数。为什么这么复杂 date("Y-m-01") 这
$month = date('m');
$year = date('Y');
$from = date('Y-m-d', mktime(0, 0, 0, $month, 1, $year));
这在计算上并不完美,但我喜欢它,因为它可读性很强:
strtotime("first day of this month");
这看起来是对我做这件事的正确方式。不过,您可能希望将它变成一个函数。为什么这么复杂
date("Y-m-01")
这就行了;)
(别担心,在意识到我可以做到这一点之前,我浪费了一个小时来摆弄strotime,这让我很生气!)日期(“Y-m-01”)
会很好地工作;
我使用了同样的技术来查找从每月第一天到今天的记录。
查看以下代码行:if(!isset($FromDate))
$FromDate=date('Y-m-01'); //date with current month's first day
if(!isset($ToDate))
$ToDate=date('Y-m-d'); /////current date
我希望它能按要求工作。你说的更好是什么意思?您所拥有的似乎很好。值得注意的是,“下个月的第一天”和“本月的第一天+2个月”等变体也有效。还值得注意的是,与问题中以午夜为时间的示例不同,此版本使用当前的小时、分和秒。我喜欢使用
$date=new DateTime(“本月的第一天”)$日期->设置时间(0,0,0)代码>