作者:--Fac_k- | 来源:互联网 | 2023-09-08 12:39
我试图弄清楚如何在我的PHP网站上显示PST的时间.我一直在使用NOW()在MySQL数据库中加入时间戳并像这样调用它们:date(“mdyg:ia”,strtotime($ref
我试图弄清楚如何在我的PHP网站上显示PST的时间.
我一直在使用NOW()在MySQL数据库中加入时间戳并像这样调用它们:
date(“m / d / y g:i a”,strtotime($ref [‘lastupdated’]))
但是,服务器时间在中央,但是,因为该网站面向PST时区的人.基本上它需要在PST中显示.有没有办法可以做到这一点 – 比如,拿下那个值并减去2或者什么?有任何想法吗?
我不确定我是否需要解决PHP路由,或者问题是否可以通过MySQL解决.
任何想法都表示赞赏 – 谢谢!
$query = "SELECT refid, CONCAT(fname,' ',lname) refname, email, street, city, state, zip, interestlvl, status, added, lastupdated FROM referrals WHERE affid='$affid' ORDER BY added DESC;";
$result = mysql_query($query) or die("Query Failed: ".mysql_errno()." - ".mysql_error()."
\n$Query
\n");
if ($result) {
while ($ref = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo '
'. date_default_timezone_set('America/Chicago'); $date = new DateTime($ref['lastupdated']); $date->setTimezone(new DateTimeZone('America/Los_Angeles')); $date->format('m/d/y g:i a') .' | ';
}
}
解决方法:
$date = new DateTime($ref['lastupdated']);
$date->setTimezone(new DateTimeZone('America/Los_Angeles'));
echo $date->format('m/d/y g:i a');
鉴于PST是美国/洛杉矶.您必须确保将date.timezone设置为Central的正确时区.这可以通过php.ini
或date_default_timezone_set()
完成.
然后代码将您的传入字符串$ref [‘lastupdated’]视为默认时区(Central),并将日期时间转换为* America / Los_Angeles *时区.