Използвайте H
вместо това:
$test = 'Fri, 15 Jan 2016 15:14:10 +0800';
$t = date('Y-m-d H:i:s',strtotime($test));
echo $t;
G трябва да е същото, но без водещи нули. Подозирам, че вашият PHP е настроен на различна часова зона от +0800
. Можете ли да потвърдите вашата часова зона (date_default_timezone_get()
)?
РЕДАКТИРАНЕ
OP потвърди, че неговата часова зона е зададена на UTC, в който случай се прикрива идеалният смисъл, че показва 7 сутринта като date
използва часова зона по подразбиране на PHP.
Ако искате да „наследите“ часовата зона, като същевременно получите повече гъвкавост, трябва да преминете към DateTime
:
echo (new DateTime($test))->format("Y-m-d H:i:s");