Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 0 Dołączył: 5.11.2009 Ostrzeżenie: (0%)
|
Witam potrzebuje kod który obliczy ile godzin różnicy jest między dwoma datami (pole datatime) z uwzględnieniem weekendów, świąt i świąt ruchomych.
Np. $od=2016-03-15 10:00:00 $do=2016-03-16 11:00:00 $wynik=25; i żeby uwzględnił weekendy i świeta (ruchome też) co juz jest w funkcji. $od=2016-03-15 10:00:00 $do=2016-03-18 11:00:00 Założmy że 16.03 i 17.03 to weekend $wynik=25; Dotychczas do różnic w datach używałem funkcji nospor'a
Ale ona liczy pięknie ino same daty bez godzin. Czy idzie ja jakoś zamienic by spełaniałą załozenia z wstępu ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 650 Pomógł: 16 Dołączył: 5.07.2010 Skąd: Ściśle Tajne Ostrzeżenie: (0%)
|
Sam napisz sobie taką funkcję... od większej daty unixowej odejmujesz datę o mniejszej wartości po czym otrzymujesz wynik w sekundach jaki czas minął od daty mniejszej do daty większej. Aby otrzymać
dni: $dni =$wynik/86400// Do tego dodaj funkcję aby pokazywało całości a nie wynik z przecinkiem godziny: $godziny = $wynik/3600; // Do tego dodaj funkcję aby pokazywało całości a nie wynik z przecinkiem od godzin odejmujemy dni: $godziny_bez_dni = ($wynik-($dni*86400))/3600; Coś takiego... pisane na szybko |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 0 Dołączył: 5.11.2009 Ostrzeżenie: (0%)
|
To co napisałęś jest proste jak sikanie, ale mam problem by z czasookresu od-do, wyrzucić dni wolne od pracy (sobota, niedziela i all swieta w tym kraju nad Wisłą).
$od=2016-03-15 10:00:00 piątek 2016-03-16 sobota 2016-03-17 niedziela $do=2016-03-18 11:00:00 poniedziałek Jak zliczyć ile godzin mineło od do bez weekendu. |
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza |
Policz ile masz dni wolnych (weekendy, święta) między tymi dwoma datami i odejmij odpowiednią ilość godzin. Jeśli dni wolne będziesz trzymał np. w bazie to zwykłe COUNT(*) i BETWEEN wystarczą.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 25.12.2025 - 20:21 |