Ray*_*ack 10 php date function
我想将一周的第一天设置为周四(不是周日或周一),因为这是该公司的截止日期.
我已经有一个代码来确定一个日期的当前周数,但是它从周日或周一开始.
如何根据自己的喜好修改这些?
function findweek($date) {
$monthstart=date("N",strtotime(date("n/l/Y",strtotime($date))));
$newdate=(date("j",strtotime($date))+$monthstart)/7;
$ddate=floor($newdate);
if($ddate != $date) {
$ddate++;
}
return $ddate;
}
Run Code Online (Sandbox Code Playgroud)
http://php.net/manual/en/datetime.formats.relative.php说从 PHP 版本 5.6.23, 7.0.8 开始“周总是从星期一开始。以前,星期日也被认为是一周的开始”也就是说,您的问题是,根据今天是在本周的星期四还是在星期四之前,返回的周数可能不正确?也许尝试这样的事情:
$date = new DateTime();
$week = intval($date->format('W'));
$day = intval($date->format('N'));
echo $day < 4 ? $week-1 : $week;
Run Code Online (Sandbox Code Playgroud)
如果减 1 不是答案,您可以尝试加法/减法,将结果与您知道的实际答案进行比较,直到获得正确的公式。希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
2148 次 |
| 最近记录: |