У меня есть следующие строки кода, я конвертирую часовой пояс edt в Asia/Shanghai (из руководства php), а затем форматирование для отображения в виде строки. Теперь, если я делаю var_dump или getTimezone() в datetime obj, я получаю что-то вроде (2), что является правильным. Но в строке он по-прежнему показывает edt как часовой пояс. Не знаю, почему это так. Кто-нибудь еще испытывает это? Есть идеи? Благодаря!strtotime не помещает правильный часовой пояс из datetime obj
(1) $ format = 'Y-m-d H: i: s';
$datetime = datetime::createfromformat($format,$appointment['appointment_datetime']);
///patient default shows time in China Standard
$datetime = $datetime->setTimezone(new DateTimeZone('Asia/Shanghai'));
$display = date('l jS F Y \a\t\ g:ia T', strtotime($datetime->format($format)));
(2) объект (DateTime) [8]
public 'date' => string '2016-08-02 05:00:00.000000' (length=26)
public 'timezone_type' => int 3
public 'timezone' => string 'Asia/Shanghai' (length=13)
Спасибо! Не уверен, как я пропустил эту глупую линию, пытаясь совместить слишком много разных результатов переполнения стека: P – nick