|
|
|
| Господа форумчане,такой вопрос: пишу скрипт для расчёта зарплаты работника работающего посменно. требуется ввести в форме время начала смены и время конца смены. А проблема в том что меня заклинило и я не могу сообразить как посчитать кол-во отработанных часов ночной смены,если она начинается в 23:00 и заканчивается в 7:00. С утренней и вечерней сменой вроде всё просто,а тут меня заклинило :(((
Может есть у кого мысли на этот счёт? | |
|
|
|
|
|
|
|
для: varvar
(31.08.2008 в 02:22)
| | А может быть такое, что третья смена будет начинаться, скажем в 1.00? Или, начинаться в 22.00 а заканчиваться в 0.00?
Можно сделать так (учитываются только часы):
<?
if ($begin > $end)
$count = 24 - $begin + $end;
else
$count = $end - $begin;
?>
|
Собственно, этот вариант можно использовать для любой смены. | |
|
|
|
|
|
|
|
для: Drago
(31.08.2008 в 03:01)
| | оба варианта рабочие, спасибо народ,терь дело пойдёт:))))) | |
|
|
|
|
|
|
|
для: varvar
(31.08.2008 в 02:22)
| |
<pre><?php
// массив (начало смены, конец смены , колличество смен);
$vsego = 0;
$array = array(
array(23, 7, 121),
array(7, 15, 122),
array(15, 23, 123)
);
function exploiter($a)
{
global $vsego;
$smena = ($a[0] > $a[1] ) ? (24-$a[0]) + $a[1] : $a[1] - $a[0];
$a = $smena * $a[2];
$vsego += $a;
return $a;
}
$hours = array_map('exploiter', $array);
print_r($hours);
print '<hr>' . $vsego;
?>
|
непроверял .) | |
|
|
|
|
|
|
|
для: xx77
(31.08.2008 в 03:02)
| | для Drago : если бы было можно...но увы и ах,всё равно спасибо:))
для xx77 : спасибо,выглядит логично,щас проверю и отпишусь:))) | |
|
|
|
|
|
|
|
для: xx77
(31.08.2008 в 03:02)
| | работает!!! спасибо! | |
|
|
|