我正在制定时间管理计划,并想知道如何找到某个月的第一个星期四。 PHP有什么功能可以帮助解决这个问题吗? strtotime不想正确格式化一些字符串。
如果我使用strtotime("first thursday december 2011")
,它将返回1323302400
,这实际上是第二个星期四(12月8日)。
如果我使用strtotime("first thursday december 2011 - 1 week")
,则会返回1322092800
,即11月24日。
请有人伸出援助之手!
答案 0 :(得分:10)
阅读PHP Bug #53539。解决方法是使用of
:strtotime("first thursday of december 2011")
请注意,PHP 5.3中修复了许多DateTime错误。如果你正在运行< 5.3你应该真的升级。
答案 1 :(得分:1)
strtotime('next thursday', strtotime('last day of november'));
甚至更干净:
strtotime('thursday', strtotime('1 december'));
答案 2 :(得分:0)
本月的第一个星期一有类似的功能here。这有帮助吗?
答案 3 :(得分:-1)
function firstThursdayOfMonth() {
$today = getdate();
$firstdayofmonth = date('Y-m') . '-01 00:00:01';
if($today !=$firstdayofmonth) {
echo $firstdayofmonth;
}
else if($firstdayofmonth != date('Y-m-d[3]'.'-01 00:00:01') ) {
echo $today;
}
else {
echo $today;
}
}
echo firstThursdayOfMonth();