Rekenen met datums
Omar
26/08/2009 18:28:00Hallo,
Ik probeer een functie te schrijven die automatisch overuren berekent alleen kom ik er niet uit ik heb bepaald dat na 18:00 en voor 04:00 wordt berekend onder overuren kan iemand mij de juiste richting in helpen
Ik probeer een functie te schrijven die automatisch overuren berekent alleen kom ik er niet uit ik heb bepaald dat na 18:00 en voor 04:00 wordt berekend onder overuren kan iemand mij de juiste richting in helpen
PHP hulp
25/11/2024 09:35:12Yearupie Achternaamloos
26/08/2009 18:35:00Eerst kijken hoelaat het is en dan kijken of de uren na 18:00 of/en Voor 4:00 zijn. zo moeilijk lijkt me dit toch niet?
Omar
26/08/2009 18:38:00M Ypma
26/08/2009 22:22:00date('Hi',$start) > 1800 && date('Hi',$end) > 0400
dat werkt niet he!
maak daarvan:
(int) date('Gi',$start) > 1800 && (int) date('Gi',$end) > 400
als ik jou was zou ik met 2 date objecten gaan werken... je bent nu met strings en date functies aan het kloten, het wordt echt een zooitje
dat werkt niet he!
maak daarvan:
(int) date('Gi',$start) > 1800 && (int) date('Gi',$end) > 400
als ik jou was zou ik met 2 date objecten gaan werken... je bent nu met strings en date functies aan het kloten, het wordt echt een zooitje
Gewijzigd op 01/01/1970 01:00:00 door M Ypma
- SanThe -
26/08/2009 22:24:00Jan Koehoorn
26/08/2009 22:33:00Omar
27/08/2009 00:38:00John Cena
27/08/2009 08:54:00Misschien moet je eerst eens kijken hoe je het op gaat slaan.
Als je ze namelijk als DATETIME() op gaat slaan kom je al een heel eind verder en hoef je je script bij lange na niet zo groot te maken. Scheelt tijd, serverruimte, en vooral dataverkeer.
Als je ze namelijk als DATETIME() op gaat slaan kom je al een heel eind verder en hoef je je script bij lange na niet zo groot te maken. Scheelt tijd, serverruimte, en vooral dataverkeer.
Willem vp
27/08/2009 10:49:00date('Hi',$end) > 1800 && date('Hi',$end) < 0400)
Ik weet wat je hier wilt doen, maar het gaat niet werken ;-)
Er zal namelijk nooit een tijdstip zijn dat EN groter is dan 1800 EN kleiner dan 0400.
Je moet de test dus opsplitsen in twee tests:
( (date('Hi',$end) > 1800 && date('Hi',$end) < 2400) ||
(date('Hi',$end) > 0000 && date('Hi',$end) < 0400) )
Is het trouwens niet handiger om de gewerkte periode op te delen in losse uren en per uur te kijken of dat in het overwerktarief valt? Volgens mij maak je daar je logica een stuk eenvoudiger mee.
Ik weet wat je hier wilt doen, maar het gaat niet werken ;-)
Er zal namelijk nooit een tijdstip zijn dat EN groter is dan 1800 EN kleiner dan 0400.
Je moet de test dus opsplitsen in twee tests:
( (date('Hi',$end) > 1800 && date('Hi',$end) < 2400) ||
(date('Hi',$end) > 0000 && date('Hi',$end) < 0400) )
Is het trouwens niet handiger om de gewerkte periode op te delen in losse uren en per uur te kijken of dat in het overwerktarief valt? Volgens mij maak je daar je logica een stuk eenvoudiger mee.
Gewijzigd op 01/01/1970 01:00:00 door Willem vp