根据14天的工资期 - PHP / SQL计算工资期

时间:2014-02-15 00:54:50

标签: php mysql foreach modx

我有一个数据库,可以收集用户输入的时间。我这样收集这些信息:

user_id     clock_in    clock_out
612         1383710400  1383728400
612         1384315200  1384333200
508         1383710400  1383738400

循环时,我计算每个对象的小时数,如下:
$total=(($e->clock_out-$e->clock_in)/60/60);

我被困的地方 我有点担心如何将他们分组到薪水期。我知道一年有26个工资期。我也知道今年的起薪时间为01.13.14 - 01.26.14

我尝试了什么: 我想在循环查看数据库结果时尝试收集一年中的一周date('W',$e->clock_in),但我不确定如何对它们进行分组。

问题:foreach期间循环时是否可以进行分组/排序?您是否建议采用不同的方法将数据分组/分类为付费期?

如果需要更多代码,请告诉我。等等。谢谢!

1 个答案:

答案 0 :(得分:1)

假设这些是标准的Unix时间戳,您可以随心所欲地提取/修改日期。如果您的工作周对应于标准日历周,则更容易:

SELECT user_id, clock_in-clock_out
FROM yourtable
GROUP BY WEEK(FROM_UNIXTIME(clock_in))

这只会按一周进行分组,但这只是为了给您一个大致的想法。

MySQL有各种各样的日期/时间函数可用于此:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_week