为了让时间戳在用户的时间段内,我已经为我的发布系统设置了一个带有PHP的时区转换工具。基本上用户通过下拉列表设置自己的时区,并将其作为PHP时区存储在数据库中 - 因此,如果我选择GMT,则数据库中的值将为Europe/London
。
然后我们的想法是从数据库中获取它并将其插入到时区转换代码中,但目前这根本不会转换任何内容。有谁能看到这个问题?
doMessage.php
$date = date("Y-m-d G:i:s");
$user_tz = $result['time'];
$schedule_date = new DateTime($date, new DateTimeZone($user_tz) );
$schedule_date->setTimeZone(new DateTimeZone('UTC'));
$date = $schedule_date->format('Y-m-d H:i:s');
芯/的init.php
<?php
session_start();
$db = new PDO('this is all correct');
if(isset($_SESSION['id'])) {
$i = $_SESSION['id'];
$query = $db->prepare("SELECT * FROM users WHERE id=:i");
$query->bindParam(":i",$i);
$query->execute();
$result = $query->fetch();
$ver = $result["activated"];
if($ver == 0) {
echo "Please <a href='activate.php'>verify your account.</a>";
}
}
else {
echo "Please <a href='login.php'>log in.</a>";
$guest = True;
}
答案 0 :(得分:0)
要获得GMT的当前日期和时间,这就足够了:
date_default_timezone_set('GMT');
$current_date = date("Y-m-d h:i:s A T")
echo $current_date;
这将于2013-12-30 5:30:20 GMT输出