好吧我坚持如何计算工资。例如,我如何计算14小时42分钟*支付薪水
我试过这个14.42 * 15 = 216.3但我非常确定这可以减去几美分或者几美元。知道怎么做吗
答案 0 :(得分:5)
由于一小时内有60分钟,而不是100分钟,14.42不是14小时42分钟,而是14小时25分钟。
要在数小时内获得正确的数字,您应该这样做:$hours + ($minutes / 60)
。
然而,不要那样。
如果您遵循此逻辑,则使用浮点数进行计算,这可能会导致意外结果。
始终使用最小的整数单位。在你的情况下,你想用分钟和美分(而不是美元!)进行计算 例如:
$worktime = $hours * 60 + $minutes;
$salary = 1540; // = $15.40 -> in cents!
$pay = $worktime * $salary; // This result is in cents
您将始终将整数$pay
(美分值)存储在数据库中(在整数列中!),并将其用于计算。您将在美元中显示,带小数,仅在结尾处显示,同时在屏幕上显示结果。
答案 1 :(得分:0)
您忘记了1h = 60m
,因此14.42
不正确,因为14h42m
应该是14 + (42/60) = 14.7
小时。
这意味着您需要这样做:
14.7 * 15 = 220.5