有没有人有PHP代码段来计算给定日期的下一个工作日?例如,YYYY-MM-DD需要如何转换才能找到下一个工作日?
示例:2011年4月3日(DD-MM-YYYY)下一个工作日是04.04.2011.2011年4月8日,下一个工作日是2011年4月11日.
这是包含我需要知道下一个工作日的日期的变量
$cubeTime['time'];
Run Code Online (Sandbox Code Playgroud)
变量包含:2011-04-01该片段的结果应为:2011-04-04
我想计算用户输入的总日差
例如,当用户输入时
start_date = 2012-09-06 和 end-date = 2012-09-11
现在我正在使用此代码来查找差异
$count = abs(strtotime($start_date) - strtotime($end_date));
$day = $count+86400;
$total = floor($day/(60*60*24));
Run Code Online (Sandbox Code Playgroud)
总计的结果将是6.但问题是我不想包括周末(周六和周日)的日子
2012-09-06
2012-09-07
2012-09-08 Saturday
2012-09-09 Sunday
2012-09-10
2012-09-11
Run Code Online (Sandbox Code Playgroud)
结果将是4
----更新---
我有一个包含日期的表,表名是假日日期
例如,表包含 2012-09-07
因此,总日数将是3,因为它没有计算假日日期
我该怎么做才能将日期与输入日期等同于表格?
我有一个场景,我想通过从今天的日期开始的8个工作日来查找日期.假设今天的日期是04/21/10.现在我想显示日期是04/09/10.Weekends应该被排除在外.
例如.如果今天的日期是04/21/10
减去周末:周六 - 04/10/10,04/17/10周日-04/11/10,04/18/10
输出结果是04/09/10.
我想用C#做这件事.
任何帮助或建议都会有所帮助.
谢谢,Sumit
我想计算给定月份和年份的工作日天数.工作日意味着星期一至星期五.我该怎么做 ?
我需要一个PHP方法来计算两个日期之间的工作时间,基于8小时工作日,不包括周末和银行假日.
例如,工作时间的2012-01-01T08:30:00AND 之间的差异2012-01-05T10:30:00实际上是26个工作小时,因为前两天是周末/银行假日,只剩下3个工作日,时间差为2个小时,即3*8+2=26.
我已经使用了@flamingLogos 对上一个问题的优秀答案,但无法将其考虑到时间和日期.
我想计算给定两个日期之间的所有星期日.我试过以下代码.如果天数较少,但如果我输入更多天,它可以正常工作.它保持处理和最大执行时间超过我改变了时间,但它甚至保持处理甚至执行时间是200秒.
代码是
<?php
$one="2013-01-01";
$two="2013-02-30";
$no=0;
for($i=$one;$i<=$two;$i++)
{
$day=date("N",strtotime($i));
if($day==7)
{
$no++;
}
}
echo $no;
?>
Run Code Online (Sandbox Code Playgroud)
请帮忙.
我正在尝试使用 php 获取接下来的 3 天,但如果日期是周末或定义的假期,我想跳过该日期。
例如,如果日期是 2013 年 12 月 23 日星期一,我的假期日期是array('2013-12-24', '2013-12-25');
脚本将返回
Monday, December 23, 2013
Thursday, December 26, 2013
Friday, December 27, 2013
Monday, December 30, 2013
Run Code Online (Sandbox Code Playgroud)
她是我当前的代码:
$arr_date = explode('-', '2013-12-23');
$counter = 0;
for ($iLoop = 0; $iLoop < 4; $iLoop++)
{
$dayOfTheWeek = date("N", mktime(0, 0, 0, $arr_date[1], $arr_date[2]+$counter, $arr_date[0]));
if ($dayOfTheWeek == 6) { $counter += 2; }
$date = date("Y-m-d", mktime(0, 0, 0, $arr_date[1], $arr_date[2]+$counter, $arr_date[0]));
echo $date;
$counter++;
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是我不知道如何排除假期日期。
如何计算从当前YEAR到今天已经过的星期日数.我还想计算从当前MONTH到今天已经过的星期日数.
例如
today is 14 April 2012 I should get 2 for the Number of Sundays
that are passed from the current month.
Run Code Online (Sandbox Code Playgroud)
任何人都可以给我一个提示或教程如何实现这一目标?