欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

计算工作日的天数

程序员文章站 2022-06-01 21:21:52
...

经过几个小时的编程,测试,终于把这个看起来比较复杂的算法搞清楚了。有一个需求是需要计算两个时间段内的工作日(周一到周五)的天数。当然不包括国家规定的假期。 无 ?phpfunction calcDays($start_date,$end_date){$start_time = strtotime($start_date);$e

经过几个小时的编程,测试,终于把这个看起来比较复杂的算法搞清楚了。有一个需求是需要计算两个时间段内的工作日(周一到周五)的天数。当然不包括国家规定的假期。
=1&&$start_time_week';
	}
}

/**
2014-09-01 2014-09-01 23:59 1
2014-09-01 2014-09-02 23:59 2
2014-09-01 2014-09-03 23:59 3
2014-09-01 2014-09-04 23:59 4
2014-09-01 2014-09-05 23:59 5
2014-09-01 2014-09-06 23:59 5
2014-09-01 2014-09-07 23:59 5
2014-09-01 2014-09-08 23:59 6
2014-09-01 2014-09-09 23:59 7
2014-09-01 2014-09-10 23:59 8
2014-09-01 2014-09-11 23:59 9
2014-09-01 2014-09-12 23:59 10
2014-09-01 2014-09-13 23:59 10
2014-09-01 2014-09-14 23:59 10
2014-09-01 2014-09-15 23:59 11
2014-09-01 2014-09-16 23:59 12
2014-09-01 2014-09-17 23:59 13
2014-09-01 2014-09-18 23:59 14
2014-09-01 2014-09-19 23:59 15
2014-09-01 2014-09-20 23:59 15
2014-09-01 2014-09-21 23:59 15
2014-09-01 2014-09-22 23:59 16
2014-09-01 2014-09-23 23:59 17
2014-09-01 2014-09-24 23:59 18
2014-09-01 2014-09-25 23:59 19
2014-09-01 2014-09-26 23:59 20
2014-09-01 2014-09-27 23:59 20
2014-09-01 2014-09-28 23:59 20
2014-09-01 2014-09-29 23:59 21
2014-09-01 2014-09-30 23:59 22
2014-09-02 2014-09-02 23:59 1
2014-09-02 2014-09-03 23:59 2
2014-09-02 2014-09-04 23:59 3
2014-09-02 2014-09-05 23:59 4
2014-09-02 2014-09-06 23:59 4
2014-09-02 2014-09-07 23:59 4
2014-09-02 2014-09-08 23:59 5
2014-09-02 2014-09-09 23:59 6
2014-09-02 2014-09-10 23:59 7
2014-09-02 2014-09-11 23:59 8
2014-09-02 2014-09-12 23:59 9
2014-09-02 2014-09-13 23:59 9
2014-09-02 2014-09-14 23:59 9
2014-09-02 2014-09-15 23:59 10
2014-09-02 2014-09-16 23:59 11
2014-09-02 2014-09-17 23:59 12
2014-09-02 2014-09-18 23:59 13
2014-09-02 2014-09-19 23:59 14
2014-09-02 2014-09-20 23:59 14
2014-09-02 2014-09-21 23:59 14
2014-09-02 2014-09-22 23:59 15
2014-09-02 2014-09-23 23:59 16
2014-09-02 2014-09-24 23:59 17
2014-09-02 2014-09-25 23:59 18
2014-09-02 2014-09-26 23:59 19
2014-09-02 2014-09-27 23:59 19
2014-09-02 2014-09-28 23:59 19
2014-09-02 2014-09-29 23:59 20
2014-09-02 2014-09-30 23:59 21
2014-09-03 2014-09-03 23:59 1
2014-09-03 2014-09-04 23:59 2
2014-09-03 2014-09-05 23:59 3
2014-09-03 2014-09-06 23:59 3
2014-09-03 2014-09-07 23:59 3
2014-09-03 2014-09-08 23:59 4
2014-09-03 2014-09-09 23:59 5
2014-09-03 2014-09-10 23:59 6
2014-09-03 2014-09-11 23:59 7
2014-09-03 2014-09-12 23:59 8
2014-09-03 2014-09-13 23:59 8
2014-09-03 2014-09-14 23:59 8
2014-09-03 2014-09-15 23:59 9
2014-09-03 2014-09-16 23:59 10
2014-09-03 2014-09-17 23:59 11
2014-09-03 2014-09-18 23:59 12
2014-09-03 2014-09-19 23:59 13
2014-09-03 2014-09-20 23:59 13
2014-09-03 2014-09-21 23:59 13
2014-09-03 2014-09-22 23:59 14
2014-09-03 2014-09-23 23:59 15
2014-09-03 2014-09-24 23:59 16
2014-09-03 2014-09-25 23:59 17
2014-09-03 2014-09-26 23:59 18
2014-09-03 2014-09-27 23:59 18
2014-09-03 2014-09-28 23:59 18
2014-09-03 2014-09-29 23:59 19
2014-09-03 2014-09-30 23:59 20
2014-09-04 2014-09-04 23:59 1
2014-09-04 2014-09-05 23:59 2
2014-09-04 2014-09-06 23:59 2
2014-09-04 2014-09-07 23:59 2
2014-09-04 2014-09-08 23:59 3
2014-09-04 2014-09-09 23:59 4
2014-09-04 2014-09-10 23:59 5
2014-09-04 2014-09-11 23:59 6
2014-09-04 2014-09-12 23:59 7
2014-09-04 2014-09-13 23:59 7
2014-09-04 2014-09-14 23:59 7
2014-09-04 2014-09-15 23:59 8
2014-09-04 2014-09-16 23:59 9
2014-09-04 2014-09-17 23:59 10
2014-09-04 2014-09-18 23:59 11
2014-09-04 2014-09-19 23:59 12
2014-09-04 2014-09-20 23:59 12
2014-09-04 2014-09-21 23:59 12
2014-09-04 2014-09-22 23:59 13
2014-09-04 2014-09-23 23:59 14
2014-09-04 2014-09-24 23:59 15
2014-09-04 2014-09-25 23:59 16
2014-09-04 2014-09-26 23:59 17
2014-09-04 2014-09-27 23:59 17
2014-09-04 2014-09-28 23:59 17
2014-09-04 2014-09-29 23:59 18
2014-09-04 2014-09-30 23:59 19
2014-09-05 2014-09-05 23:59 1
2014-09-05 2014-09-06 23:59 1
2014-09-05 2014-09-07 23:59 1
2014-09-05 2014-09-08 23:59 2
2014-09-05 2014-09-09 23:59 3
2014-09-05 2014-09-10 23:59 4
2014-09-05 2014-09-11 23:59 5
2014-09-05 2014-09-12 23:59 6
2014-09-05 2014-09-13 23:59 6
2014-09-05 2014-09-14 23:59 6
2014-09-05 2014-09-15 23:59 7
2014-09-05 2014-09-16 23:59 8
2014-09-05 2014-09-17 23:59 9
2014-09-05 2014-09-18 23:59 10
2014-09-05 2014-09-19 23:59 11
2014-09-05 2014-09-20 23:59 11
2014-09-05 2014-09-21 23:59 11
2014-09-05 2014-09-22 23:59 12
2014-09-05 2014-09-23 23:59 13
2014-09-05 2014-09-24 23:59 14
2014-09-05 2014-09-25 23:59 15
2014-09-05 2014-09-26 23:59 16
2014-09-05 2014-09-27 23:59 16
2014-09-05 2014-09-28 23:59 16
2014-09-05 2014-09-29 23:59 17
2014-09-05 2014-09-30 23:59 18
2014-09-06 2014-09-06 23:59 0
2014-09-06 2014-09-07 23:59 0
2014-09-06 2014-09-08 23:59 1
2014-09-06 2014-09-09 23:59 2
2014-09-06 2014-09-10 23:59 3
2014-09-06 2014-09-11 23:59 4
2014-09-06 2014-09-12 23:59 5
2014-09-06 2014-09-13 23:59 5
2014-09-06 2014-09-14 23:59 5
2014-09-06 2014-09-15 23:59 6
2014-09-06 2014-09-16 23:59 7
2014-09-06 2014-09-17 23:59 8
2014-09-06 2014-09-18 23:59 9
2014-09-06 2014-09-19 23:59 10
2014-09-06 2014-09-20 23:59 10
2014-09-06 2014-09-21 23:59 10
2014-09-06 2014-09-22 23:59 11
2014-09-06 2014-09-23 23:59 12
2014-09-06 2014-09-24 23:59 13
2014-09-06 2014-09-25 23:59 14
2014-09-06 2014-09-26 23:59 15
2014-09-06 2014-09-27 23:59 15
2014-09-06 2014-09-28 23:59 15
2014-09-06 2014-09-29 23:59 16
2014-09-06 2014-09-30 23:59 17
2014-09-07 2014-09-07 23:59 0
2014-09-07 2014-09-08 23:59 1
2014-09-07 2014-09-09 23:59 2
2014-09-07 2014-09-10 23:59 3
2014-09-07 2014-09-11 23:59 4
2014-09-07 2014-09-12 23:59 5
2014-09-07 2014-09-13 23:59 5
2014-09-07 2014-09-14 23:59 5
2014-09-07 2014-09-15 23:59 6
2014-09-07 2014-09-16 23:59 7
2014-09-07 2014-09-17 23:59 8
2014-09-07 2014-09-18 23:59 9
2014-09-07 2014-09-19 23:59 10
2014-09-07 2014-09-20 23:59 10
2014-09-07 2014-09-21 23:59 10
2014-09-07 2014-09-22 23:59 11
2014-09-07 2014-09-23 23:59 12
2014-09-07 2014-09-24 23:59 13
2014-09-07 2014-09-25 23:59 14
2014-09-07 2014-09-26 23:59 15
2014-09-07 2014-09-27 23:59 15
2014-09-07 2014-09-28 23:59 15
2014-09-07 2014-09-29 23:59 16
2014-09-07 2014-09-30 23:59 17
2014-09-08 2014-09-08 23:59 1
2014-09-08 2014-09-09 23:59 2
2014-09-08 2014-09-10 23:59 3
2014-09-08 2014-09-11 23:59 4
2014-09-08 2014-09-12 23:59 5
2014-09-08 2014-09-13 23:59 5
2014-09-08 2014-09-14 23:59 5
2014-09-08 2014-09-15 23:59 6
2014-09-08 2014-09-16 23:59 7
2014-09-08 2014-09-17 23:59 8
2014-09-08 2014-09-18 23:59 9
2014-09-08 2014-09-19 23:59 10
2014-09-08 2014-09-20 23:59 10
2014-09-08 2014-09-21 23:59 10
2014-09-08 2014-09-22 23:59 11
2014-09-08 2014-09-23 23:59 12
2014-09-08 2014-09-24 23:59 13
2014-09-08 2014-09-25 23:59 14
2014-09-08 2014-09-26 23:59 15
2014-09-08 2014-09-27 23:59 15
2014-09-08 2014-09-28 23:59 15
2014-09-08 2014-09-29 23:59 16
2014-09-08 2014-09-30 23:59 17
2014-09-09 2014-09-09 23:59 1
2014-09-09 2014-09-10 23:59 2
2014-09-09 2014-09-11 23:59 3
2014-09-09 2014-09-12 23:59 4
2014-09-09 2014-09-13 23:59 4
2014-09-09 2014-09-14 23:59 4
2014-09-09 2014-09-15 23:59 5
2014-09-09 2014-09-16 23:59 6
2014-09-09 2014-09-17 23:59 7
2014-09-09 2014-09-18 23:59 8
2014-09-09 2014-09-19 23:59 9
2014-09-09 2014-09-20 23:59 9
2014-09-09 2014-09-21 23:59 9
2014-09-09 2014-09-22 23:59 10
2014-09-09 2014-09-23 23:59 11
2014-09-09 2014-09-24 23:59 12
2014-09-09 2014-09-25 23:59 13
2014-09-09 2014-09-26 23:59 14
2014-09-09 2014-09-27 23:59 14
2014-09-09 2014-09-28 23:59 14
2014-09-09 2014-09-29 23:59 15
2014-09-09 2014-09-30 23:59 16
2014-09-10 2014-09-10 23:59 1
2014-09-10 2014-09-11 23:59 2
2014-09-10 2014-09-12 23:59 3
2014-09-10 2014-09-13 23:59 3
2014-09-10 2014-09-14 23:59 3
2014-09-10 2014-09-15 23:59 4
2014-09-10 2014-09-16 23:59 5
2014-09-10 2014-09-17 23:59 6
2014-09-10 2014-09-18 23:59 7
2014-09-10 2014-09-19 23:59 8
2014-09-10 2014-09-20 23:59 8
2014-09-10 2014-09-21 23:59 8
2014-09-10 2014-09-22 23:59 9
2014-09-10 2014-09-23 23:59 10
2014-09-10 2014-09-24 23:59 11
2014-09-10 2014-09-25 23:59 12
2014-09-10 2014-09-26 23:59 13
2014-09-10 2014-09-27 23:59 13
2014-09-10 2014-09-28 23:59 13
2014-09-10 2014-09-29 23:59 14
2014-09-10 2014-09-30 23:59 15
2014-09-11 2014-09-11 23:59 1
2014-09-11 2014-09-12 23:59 2
2014-09-11 2014-09-13 23:59 2
2014-09-11 2014-09-14 23:59 2
2014-09-11 2014-09-15 23:59 3
2014-09-11 2014-09-16 23:59 4
2014-09-11 2014-09-17 23:59 5
2014-09-11 2014-09-18 23:59 6
2014-09-11 2014-09-19 23:59 7
2014-09-11 2014-09-20 23:59 7
2014-09-11 2014-09-21 23:59 7
2014-09-11 2014-09-22 23:59 8
2014-09-11 2014-09-23 23:59 9
2014-09-11 2014-09-24 23:59 10
2014-09-11 2014-09-25 23:59 11
2014-09-11 2014-09-26 23:59 12
2014-09-11 2014-09-27 23:59 12
2014-09-11 2014-09-28 23:59 12
2014-09-11 2014-09-29 23:59 13
2014-09-11 2014-09-30 23:59 14
2014-09-12 2014-09-12 23:59 1
2014-09-12 2014-09-13 23:59 1
2014-09-12 2014-09-14 23:59 1
2014-09-12 2014-09-15 23:59 2
2014-09-12 2014-09-16 23:59 3
2014-09-12 2014-09-17 23:59 4
2014-09-12 2014-09-18 23:59 5
2014-09-12 2014-09-19 23:59 6
2014-09-12 2014-09-20 23:59 6
2014-09-12 2014-09-21 23:59 6
2014-09-12 2014-09-22 23:59 7
2014-09-12 2014-09-23 23:59 8
2014-09-12 2014-09-24 23:59 9
2014-09-12 2014-09-25 23:59 10
2014-09-12 2014-09-26 23:59 11
2014-09-12 2014-09-27 23:59 11
2014-09-12 2014-09-28 23:59 11
2014-09-12 2014-09-29 23:59 12
2014-09-12 2014-09-30 23:59 13
2014-09-13 2014-09-13 23:59 0
2014-09-13 2014-09-14 23:59 0
2014-09-13 2014-09-15 23:59 1
2014-09-13 2014-09-16 23:59 2
2014-09-13 2014-09-17 23:59 3
2014-09-13 2014-09-18 23:59 4
2014-09-13 2014-09-19 23:59 5
2014-09-13 2014-09-20 23:59 5
2014-09-13 2014-09-21 23:59 5
2014-09-13 2014-09-22 23:59 6
2014-09-13 2014-09-23 23:59 7
2014-09-13 2014-09-24 23:59 8
2014-09-13 2014-09-25 23:59 9
2014-09-13 2014-09-26 23:59 10
2014-09-13 2014-09-27 23:59 10
2014-09-13 2014-09-28 23:59 10
2014-09-13 2014-09-29 23:59 11
2014-09-13 2014-09-30 23:59 12
2014-09-14 2014-09-14 23:59 0
2014-09-14 2014-09-15 23:59 1
2014-09-14 2014-09-16 23:59 2
2014-09-14 2014-09-17 23:59 3
2014-09-14 2014-09-18 23:59 4
2014-09-14 2014-09-19 23:59 5
2014-09-14 2014-09-20 23:59 5
2014-09-14 2014-09-21 23:59 5
2014-09-14 2014-09-22 23:59 6
2014-09-14 2014-09-23 23:59 7
2014-09-14 2014-09-24 23:59 8
2014-09-14 2014-09-25 23:59 9
2014-09-14 2014-09-26 23:59 10
2014-09-14 2014-09-27 23:59 10
2014-09-14 2014-09-28 23:59 10
2014-09-14 2014-09-29 23:59 11
2014-09-14 2014-09-30 23:59 12
2014-09-15 2014-09-15 23:59 1
2014-09-15 2014-09-16 23:59 2
2014-09-15 2014-09-17 23:59 3
2014-09-15 2014-09-18 23:59 4
2014-09-15 2014-09-19 23:59 5
2014-09-15 2014-09-20 23:59 5
2014-09-15 2014-09-21 23:59 5
2014-09-15 2014-09-22 23:59 6
2014-09-15 2014-09-23 23:59 7
2014-09-15 2014-09-24 23:59 8
2014-09-15 2014-09-25 23:59 9
2014-09-15 2014-09-26 23:59 10
2014-09-15 2014-09-27 23:59 10
2014-09-15 2014-09-28 23:59 10
2014-09-15 2014-09-29 23:59 11
2014-09-15 2014-09-30 23:59 12
2014-09-16 2014-09-16 23:59 1
2014-09-16 2014-09-17 23:59 2
2014-09-16 2014-09-18 23:59 3
2014-09-16 2014-09-19 23:59 4
2014-09-16 2014-09-20 23:59 4
2014-09-16 2014-09-21 23:59 4
2014-09-16 2014-09-22 23:59 5
2014-09-16 2014-09-23 23:59 6
2014-09-16 2014-09-24 23:59 7
2014-09-16 2014-09-25 23:59 8
2014-09-16 2014-09-26 23:59 9
2014-09-16 2014-09-27 23:59 9
2014-09-16 2014-09-28 23:59 9
2014-09-16 2014-09-29 23:59 10
2014-09-16 2014-09-30 23:59 11
2014-09-17 2014-09-17 23:59 1
2014-09-17 2014-09-18 23:59 2
2014-09-17 2014-09-19 23:59 3
2014-09-17 2014-09-20 23:59 3
2014-09-17 2014-09-21 23:59 3
2014-09-17 2014-09-22 23:59 4
2014-09-17 2014-09-23 23:59 5
2014-09-17 2014-09-24 23:59 6
2014-09-17 2014-09-25 23:59 7
2014-09-17 2014-09-26 23:59 8
2014-09-17 2014-09-27 23:59 8
2014-09-17 2014-09-28 23:59 8
2014-09-17 2014-09-29 23:59 9
2014-09-17 2014-09-30 23:59 10
2014-09-18 2014-09-18 23:59 1
2014-09-18 2014-09-19 23:59 2
2014-09-18 2014-09-20 23:59 2
2014-09-18 2014-09-21 23:59 2
2014-09-18 2014-09-22 23:59 3
2014-09-18 2014-09-23 23:59 4
2014-09-18 2014-09-24 23:59 5
2014-09-18 2014-09-25 23:59 6
2014-09-18 2014-09-26 23:59 7
2014-09-18 2014-09-27 23:59 7
2014-09-18 2014-09-28 23:59 7
2014-09-18 2014-09-29 23:59 8
2014-09-18 2014-09-30 23:59 9
2014-09-19 2014-09-19 23:59 1
2014-09-19 2014-09-20 23:59 1
2014-09-19 2014-09-21 23:59 1
2014-09-19 2014-09-22 23:59 2
2014-09-19 2014-09-23 23:59 3
2014-09-19 2014-09-24 23:59 4
2014-09-19 2014-09-25 23:59 5
2014-09-19 2014-09-26 23:59 6
2014-09-19 2014-09-27 23:59 6
2014-09-19 2014-09-28 23:59 6
2014-09-19 2014-09-29 23:59 7
2014-09-19 2014-09-30 23:59 8
2014-09-20 2014-09-20 23:59 0
2014-09-20 2014-09-21 23:59 0
2014-09-20 2014-09-22 23:59 1
2014-09-20 2014-09-23 23:59 2
2014-09-20 2014-09-24 23:59 3
2014-09-20 2014-09-25 23:59 4
2014-09-20 2014-09-26 23:59 5
2014-09-20 2014-09-27 23:59 5
2014-09-20 2014-09-28 23:59 5
2014-09-20 2014-09-29 23:59 6
2014-09-20 2014-09-30 23:59 7
2014-09-21 2014-09-21 23:59 0
2014-09-21 2014-09-22 23:59 1
2014-09-21 2014-09-23 23:59 2
2014-09-21 2014-09-24 23:59 3
2014-09-21 2014-09-25 23:59 4
2014-09-21 2014-09-26 23:59 5
2014-09-21 2014-09-27 23:59 5
2014-09-21 2014-09-28 23:59 5
2014-09-21 2014-09-29 23:59 6
2014-09-21 2014-09-30 23:59 7
2014-09-22 2014-09-22 23:59 1
2014-09-22 2014-09-23 23:59 2
2014-09-22 2014-09-24 23:59 3
2014-09-22 2014-09-25 23:59 4
2014-09-22 2014-09-26 23:59 5
2014-09-22 2014-09-27 23:59 5
2014-09-22 2014-09-28 23:59 5
2014-09-22 2014-09-29 23:59 6
2014-09-22 2014-09-30 23:59 7
2014-09-23 2014-09-23 23:59 1
2014-09-23 2014-09-24 23:59 2
2014-09-23 2014-09-25 23:59 3
2014-09-23 2014-09-26 23:59 4
2014-09-23 2014-09-27 23:59 4
2014-09-23 2014-09-28 23:59 4
2014-09-23 2014-09-29 23:59 5
2014-09-23 2014-09-30 23:59 6
2014-09-24 2014-09-24 23:59 1
2014-09-24 2014-09-25 23:59 2
2014-09-24 2014-09-26 23:59 3
2014-09-24 2014-09-27 23:59 3
2014-09-24 2014-09-28 23:59 3
2014-09-24 2014-09-29 23:59 4
2014-09-24 2014-09-30 23:59 5
2014-09-25 2014-09-25 23:59 1
2014-09-25 2014-09-26 23:59 2
2014-09-25 2014-09-27 23:59 2
2014-09-25 2014-09-28 23:59 2
2014-09-25 2014-09-29 23:59 3
2014-09-25 2014-09-30 23:59 4
2014-09-26 2014-09-26 23:59 1
2014-09-26 2014-09-27 23:59 1
2014-09-26 2014-09-28 23:59 1
2014-09-26 2014-09-29 23:59 2
2014-09-26 2014-09-30 23:59 3
2014-09-27 2014-09-27 23:59 0
2014-09-27 2014-09-28 23:59 0
2014-09-27 2014-09-29 23:59 1
2014-09-27 2014-09-30 23:59 2
2014-09-28 2014-09-28 23:59 0
2014-09-28 2014-09-29 23:59 1
2014-09-28 2014-09-30 23:59 2
2014-09-29 2014-09-29 23:59 1
2014-09-29 2014-09-30 23:59 2
2014-09-30 2014-09-30 23:59 1
 */