Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP时间框架,获取总小时数、晚间小时数、夜间小时数、周末小时数和节假日_Php_Date_Strtotime - Fatal编程技术网

PHP时间框架,获取总小时数、晚间小时数、夜间小时数、周末小时数和节假日

PHP时间框架,获取总小时数、晚间小时数、夜间小时数、周末小时数和节假日,php,date,strtotime,Php,Date,Strtotime,我目前正在开发一个应用程序,我需要在现有的发票系统中添加一个新功能 员工放弃工作时间的方式如下: Start: 18:30 01-01-2012 End: 00:30 02-01-2012 现在,当有人根据选定的日期范围创建发票时,系统会生成总工时x小时价格。这很好,不是问题所在 现在,如果工作时间在晚上、晚上、周末周六/周日和节假日,系统需要能够在小时费率的基础上额外收取% 有人知道如何实现这一点吗 获得周末并不难,但当我获得周末时,我还需要知道这些周末工作了多少小时。。它有点多维 我的想法

我目前正在开发一个应用程序,我需要在现有的发票系统中添加一个新功能

员工放弃工作时间的方式如下:

Start: 18:30 01-01-2012
End: 00:30 02-01-2012
现在,当有人根据选定的日期范围创建发票时,系统会生成总工时x小时价格。这很好,不是问题所在

现在,如果工作时间在晚上、晚上、周末周六/周日和节假日,系统需要能够在小时费率的基础上额外收取%

有人知道如何实现这一点吗

获得周末并不难,但当我获得周末时,我还需要知道这些周末工作了多少小时。。它有点多维

我的想法是先在时间范围内循环,首先循环每天的日期,然后循环每天的小时数,然后在每个循环中进行某种检查,以检查它是否为夜间小时,晚上小时。。周末。。假期


我很想听到任何想法,因为我有点卡住了。

我已经找到了一个解决方案来做我想做的事。因此,我想把它分享给其他需要做同样事情的人

我在开始日期时间和结束日期时间之间创建了一个循环,间隔为15分钟,因为员工总是在一个精确的小时或:15,:30,:45开始或结束

每隔15分钟,我就检查一次日期是否属于假日、晚间、夜间或周末(周六+周日)

我已将假日日期添加到一个数组中,与夜间和夜间相同

在每一次IF声明检查中,我都做了一个计数器来记录每种类型的15分钟,假日、晚上、夜间或周末

最后,你得到了每种类型的小时、假日或周末的总分钟数,除以60,得到了每种类型的小时、假日或周末的总工作小时数。在此基础上,我计算了在这些时间工作的额外费用

也许这不是最好的方法,但对我来说很有效