在两个日期之间获得工作日,并提供定制休息日

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在两个日期之间获得工作日,并提供定制休息日相关的知识,希望对你有一定的参考价值。

  1. /**
  2.  * Get working days between two dates, with custom off day
  3.  *
  4.  * @param Date $startDate End Date
  5.  * @param Date $endDate To date
  6.  * @param Array $holidays Week Number in Single dimension array
  7.  * @return integer
  8.  */
  9.  
  10. function getWorkingDays_customOffDay($startDate, $endDate, $holidays) {
  11.  
  12. $day = 86400; // Day in seconds
  13.  
  14. $sTime = strtotime($startDate); // Start as time
  15. $eTime = strtotime($endDate); // End as time
  16. $numDays = round(($eTime - $sTime) / $day) + 1;
  17.  
  18. $days = array();
  19.  
  20. for ($d = 0; $d < $numDays; $d++) {
  21. $day_number = date('N', ($sTime + ($d * $day)));
  22. if (!in_array($day_number, $holidays)) {
  23. $days[] = date('Y-m-d N', ($sTime + ($d * $day)));
  24. }
  25. }
  26.  
  27. return count($days);
  28.  
  29. }

以上是关于在两个日期之间获得工作日,并提供定制休息日的主要内容,如果未能解决你的问题,请参考以下文章

JAVA判断当前日期是节假日还是工作日

python获取两个日期间的工作日

如何在 android 中获得两个日期之间的差异?,尝试所有事情并发布

用excel函数判断一个日期是工作日还是休息日

如何计算打字稿中两个日期之间的时间

Excel中计算两个日期之间的天数,扣除周六周日