Nächster Geschäftstag eines bestimmten Datums in PHP
Hat jemand ein PHP-snippet zur Berechnung der nächsten business-Tag für ein bestimmtes Datum?
Wie zum Beispiel YYYY-MM-DD konvertiert werden müssen, um herauszufinden, das nächste Geschäft Tag?
Beispiel:
Für die 03.04.2011 (DD-MM-YYYY) den nächsten business-Tag ist der 04.04.2011.
Für den 08.04.2011 am nächsten Werktag ist 11.04.2011.
Dies ist die variable mit dem Datum, muss ich wissen, am nächsten Arbeitstag, für
$cubeTime['time'];
Variable enthält: 2011-04-01
Ergebnis der snippet sollte: 2011-04-04
InformationsquelleAutor der Frage Marko | 2011-04-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nächsten Werktag
Dieser findet am nächsten Werktag ab einem bestimmten Zeitpunkt (nicht einschließlich Samstag oder Sonntag):
Könnten Sie auch tun es mit einer date-variable natürlich:
UPDATE: Oder, wenn Sie Zugang zu PHP ' s DateTime-Klasse (sehr wahrscheinlich):
Überspringen möchten Urlaub?:
Obwohl das ursprüngliche Plakat erwähnt "ich brauche nicht zu überlegen, Urlaub", wenn Sie passieren zu wollen, zu ignorieren, Urlaub, denken Sie daran - "Urlaub" ist nur ein array von was auch immer Daten, die Sie nicht einschließen möchten, und unterscheidet sich von Land zu Land, region, Unternehmen, person...etc.
Einfach den obigen code in eine Funktion, schließt/Schleifen Vergangenheit die Daten, die Sie nicht wollen, enthalten. So etwas wie dieses:
Ich bin mir sicher, dass der obige code kann vereinfacht werden, oder verkürzt, wenn Sie wollen. Ich habe versucht zu schreiben, es in einer leicht verständlichen Art und Weise.
InformationsquelleAutor der Antwort Dave
UK Feiertagen können Sie
https://www.gov.uk/bank-holidays#england-and-wales
ICS-format-Daten einfach zu Parsen. Mein Vorschlag ist...
InformationsquelleAutor der Antwort user2412642
Sollte diese Funktion ignorieren Wochenenden (6 = Samstag, und 0 = Sonntag).
InformationsquelleAutor der Antwort mhitza
Was Sie tun müssen, ist:
Wandeln die bereitgestellten Datums in ein timestamp.
Verwenden Sie diese zusammen mit dem oder
w
oderN
Formatierer für PHP Datum Befehl, Ihnen zu sagen, was Tag der Woche es ist.Wenn es nicht ein "business-Tag", können Sie dann erhöhen Sie den Zeitstempel von einem Tag (86400 Sekunden) und erneut prüfen, bis Sie auf einen Werktag.
N. B.: dies ist wirklich arbeiten, würden Sie auch brauchen, um auszuschließen, jede bank oder an Feiertagen, etc.
InformationsquelleAutor der Antwort John Parker
Diese Funktion berechnet den business-Tag in der Zukunft oder in der Vergangenheit. Argumente sind die Anzahl der Tage, vorwärts (1) oder nach hinten(0), und ein Datum. Wenn kein Datum geliefert wird das heutige Datum verwendet werden:
InformationsquelleAutor der Antwort Angus
Stolperte ich apon diesem thread, wenn ich arbeiten war auf einer dänischen website, wo ich brauchte, um code eine "Lieferung am Nächsten Tag" PHP-Skript.
Hier ist was ich kam mit (Dies wird der name des nächsten Arbeitstages in Dänisch, und den nächsten Arbeitstag + 1, wenn die aktuelle Zeit ist mehr als ein vorgegebenes limit)
Als Sie können siehe in der Beispiel-code $checkTime ist, wo ich die Zeit einstellen, die Obergrenze, die bestimmt, ob die Lieferung am nächsten Tag +1 Arbeitstag oder +2 Arbeitstage.
'1400' = 14:00 Uhr
Ich weiß, dass die, wenn Aussagen gemacht werden können stärker komprimiert, aber ich zeige mein code für die Menschen zu leicht, zu verstehen, wie es funktioniert.
Ich hoffe jemand da draußen kann die Verwendung dieser kleine Schnipsel.
InformationsquelleAutor der Antwort GeniusDesign
Siehe Beispiel unten:
Weitere Infos: http://goo.gl/YOsfPX
InformationsquelleAutor der Antwort Suresh Kamrushi
Konnten Sie so etwas tun.
Ausgabe:
\NavigableDate\NavigableDateFacade::create($date, $DateTimeZone)
ist, wird durch den php-Bibliothek zur Verfügung zu https://packagist.org/packages/ishworkh/navigable-date. Sie müssen zu den ersten gehören die diese Bibliothek in Ihr Projekt mit composer oder als direkten download.InformationsquelleAutor der Antwort Ishwor Khadka