Кто-либо может предложить, чтобы легкий метод преобразовал дату и время в различные часовые пояса в php?
Для этого вы можете использовать объект datetime или их псевдонимы функций:
Пример ( сокращено из Руководства PHP )
date_default_timezone_set('Europe/London');
$datetime = new DateTime('2008-08-03 12:35:23');
echo $datetime->format('Y-m-d H:i:s') . "\n";
$la_time = new DateTimeZone('America/Los_Angeles');
$datetime->setTimezone($la_time);
echo $datetime->format('Y-m-d H:i:s');
Редактировать относительно комментариев
но я не могу использовать этот метод, потому что мне нужно отображать дату в разных часовых поясах при входе пользователя из разных мест
Это не проблема. Когда пользователь входит в систему, вы определяете его часовой пояс и устанавливаете его в свой объект DateTime, как показано. Я использую аналогичный подход в одном из своих проектов, и он отлично работает.
в базе данных мне нужно получить даты в любом часовом поясе, тогда только это может быть правильно обработано
Вы сохраняете время либо как отметку времени, либо как дату-время в одном часовом поясе. Когда вы запрашиваете поле DateTime, вы либо конвертируете время в объекте DateTime в этот часовой пояс, либо - если ваша база данных поддерживает это - запрашиваете с выбранным часовым поясом.