Veel sites zeggen gebruik strftime maar dat werkt niet meer.
Hoe krijg ik zowel in de winter als in de zomer de juiste tijd? Liefst de Belgische. Je weet maar nooit dat Be of NL de winter- of zomertijd afschaft en de andere niet :)
Snap ik (meeste toch) maar hoe reken ik dan juist? Ik kan toch moeilijk zelf php gaan herschrijven. Ik kan wel 3600 seconden aftrekken en na 6 maand er 7200 van maken en zo elke jaar te wisselen. Niet echt handig.
Ik denk ook dat 13 seconden in Londen hetzelfde is als hier BE en NL dus 00:00:13
?Onbekende gebruiker
26-04-2024 12:20
gewijzigd op 26-04-2024 12:25
Dit zou altijd moeten werken (tenzij je de Intl extensie uit hebt staan):
<?php
// zie: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
$tijdzone = IntlTimeZone::createTimeZone("Europe/Brussels");
$locale = "nl_BE";
// "The calendar created will represent the time instance at which it was created, based on the system time."
$kalender = IntlCalendar::createInstance($tijdzone, $locale);
// zie: https://unicode-org.github.io/icu/userguide/format_parse/datetime/
$format = "dd/MM/yyyy HH:mm:ss";
$formatter = IntlDateFormatter::create($locale, IntlDateFormatter::FULL,
IntlDateFormatter::FULL, $tijdzone, $kalender, $format);
print $formatter->format($kalender); // geen idee waarom je $kalender 2x moet opgeven..
?>
Ik denk ook dat 13 seconden in Londen hetzelfde is als hier BE en NL dus 00:00:13
die 13 in Date('xyz', 13); staat niet voor zo maar 13 seconden, maar 13 seconden sinds het in Greenwich 1 januari 1970 werd.
dus ook voor het in Nederland etc 01:00 werd op die 1 januari 1970.
Als je een zeker tijdstip hebt, kun je gewoon
$date = new DateTime('2024-04-26 12:52');
doen, mits je vooraf je timezone juist hebt gezet.
Als je bedoelt dat dit een tijdstip betreft waarop in New York iets gebeurt, dan is het handig om de betreffende tijdszone daarbij mee te geven.
Wil je er een uur bij optellen:
$date->modify('+1 hour');
En dat houdt dan ook direct rekening met de overgang van zomer en wintertijd.
Maar ga niet zelf in seconden zitten tellen.
Als de locales met PHP in Windows nog een probleem zijn, dan heb ik hier de juiste set gevonden in mijn sourcecode:
<?php
setlocale(LC_ALL, 'nl_NL', 'nl', 'du', 'dutch');
?>
In Windows krijg ik hiermee netjes de Nederlandse datums qua taal.