Как изменить часовой пояс в PHP на существующую временную метку?

Код для функции даты и времени:

function date_and_time($format,$timestamp) { $date_and_time = date($format,$timestamp); return $date_and_time; } 

А затем код для его отображения:

  <?php echo date_and_time("dS FY", strtotime($profile[last_activity_date_and_time])); ?> 

Значение $ profile [last_activity_date_and_time] – 2010-01-18 14:34:04

При отображении отображается до 18 января 2010 года – 14:34

Но есть ли способ изменить часовой пояс, на котором он отображается?

Не уверен, что это то, что вы ищете, но попробуйте DateTime

 date_default_timezone_set('Europe/London'); $datetime = new DateTime(); $datetime->setTimestamp($yourTimestamp); echo $datetime->getTimezone()->getName(); echo $datetime->format(DATE_ATOM); $la_time = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($la_time); echo $datetime->getTimezone()->getName(); echo $datetime->format(DATE_ATOM); 

Вы можете использовать эту функцию для установки часового пояса по умолчанию:

 date_default_timezone_set('Europe/London');