Ich verstehe DatePeriod, DateInterval Klassen nicht sehr gut. Diese Frage ist mit einer anderen Frage verknüpft - Wie kann man umgerechnete Zeitzonen in einer "generischen Woche" (Sonntag bis Samstag) anzeigen? in dem ich die Lösung parametrisieren möchte, die von artefacto .
Für Hilfe wären wir dankbar!
Dies ist der Code von artefacto:
$tz1 = new DateTimezone("Asia/Calcutta");
$indiaAvail = array(
new DatePeriod(new DateTime("2010-08-01 10:00:00", $tz1),
new DateInterval("PT2H15M"), 1)
);
Das habe ich mir ausgedacht:
function shift_timezones_onweek($from_timezone, $from_timebegin, $from_timeend, $to_timezone)
{
$tz1 = new DateTimezone($from_timezone);
$datetime1 = new DateTime("2010-08-01 $from_timebegin", $tz1);
$datetime2 = new DateTime("2010-08-01 $from_timeend", $tz1);
$interval = $datetime1->diff($datetime2);
$indiaAvail = array(
new DatePeriod($datetime1, $interval, 1)
);
...
Wie artefacto darauf hinweist, "gibt es keinen Sinn in den Aufbau einer DatePeriod aus zwei Zeiten, nur um es sofort nach in diese zwei Daten zerlegt haben", aber ich verstehe nicht, wie ich dies leicht ändern kann, damit es mit dem Rest seines Codes (die $indiaAvail zu existieren, wie es ist ich schätze, erfordert ...) arbeiten