I have a timestamp value from PHP: 1188604800000
When I format the time to human readable like this:
date("m/d/Y", 1188604800000)
It prints:
05/21/39635
If I put the number into an online Unix Timestamp converter I get:
Sat, 01 Sep 2007 00:00:00 GMT
What am I doing wrong?
PHP uses seconds-based timestamps, so divide 1188604800
by 1000
and you are good.
php> echo date('Y-m-d', 1188604800000/1000);
2007-09-01
I was having trouble with my date being one day off and I had to manually set the default timezone to match my location by using
<?php date_default_timezone_set("Australia/Perth"); ?>
A list of support timezones can be found here - http://www.php.net/manual/en/timezones.php
(I don't have enough rep to comment so can someone merge that with the actual answer?)