<?php
$date = new DateTime('2015-01-15 15:00:00', new DateTimeZone('UTC'));
var_dump($date);
echo "\n Date timestamp using format(): " . $date->format('U');
echo "\n Date timestamp using getTimestamp(): " . $date->getTimestamp();
echo "\nChanging timezone to CET";
$date->setTimezone(new DateTimeZone('EAT'));
echo "\n Date timestamp using format(): " . $date->format('U') . ' NB: This has changed?!?!';
echo "\n Date timestamp using getTimestamp(): " . $date->getTimestamp() . ' NB: Now it is back?!?!';
echo "\n Date timestamp using format() again: " . $date->format('U') . ' NB: Now it is back?!?!';
object(DateTime)#1 (3) {
["date"]=>
string(26) "2015-01-15 15:00:00.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
Date timestamp using format(): 1421334000
Date timestamp using getTimestamp(): 1421334000
Changing timezone to CET
Date timestamp using format(): 1421334000 NB: This has changed?!?!
Date timestamp using getTimestamp(): 1421334000 NB: Now it is back?!?!
Date timestamp using format() again: 1421334000 NB: Now it is back?!?!
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
object(DateTime)#1 (3) {
["date"]=>
string(26) "2015-01-15 15:00:00.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
Date timestamp using format(): 1421334000
Date timestamp using getTimestamp(): 1421334000
Changing timezone to CET
Date timestamp using format(): 1421334000 NB: This has changed?!?!
Date timestamp using getTimestamp(): 1421334000 NB: Now it is back?!?!
Date timestamp using format() again: 1421334000 NB: Now it is back?!?!
object(DateTime)#1 (3) {
["date"]=>
string(26) "2015-01-15 15:00:00.000000"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
Date timestamp using format(): 1421334000
Date timestamp using getTimestamp(): 1421334000
Changing timezone to CET
Date timestamp using format(): 1421344800 NB: This has changed?!?!
Date timestamp using getTimestamp(): 1421334000 NB: Now it is back?!?!
Date timestamp using format() again: 1421334000 NB: Now it is back?!?!