Użyj H
zamiast tego:
$test = 'Fri, 15 Jan 2016 15:14:10 +0800';
$t = date('Y-m-d H:i:s',strtotime($test));
echo $t;
G powinno być takie samo, ale bez wiodących zer. Podejrzewam, że twoje PHP jest ustawione na inną strefę czasową niż +0800
. Czy możesz potwierdzić swoją strefę czasową (date_default_timezone_get()
)?
EDYTUJ
OP potwierdził, że jego strefa czasowa została ustawiona na UTC, w którym to przypadku maskuje doskonały sens, że pokazuje 7 rano, jako date
używa domyślnej strefy czasowej PHP.
Jeśli chcesz "odziedziczyć" strefę czasową, jednocześnie uzyskując większą elastyczność, powinieneś przełączyć się na DateTime
:
echo (new DateTime($test))->format("Y-m-d H:i:s");