PHP date_timezone_set没有输出



我正在尝试将MySQL字段的时区(日期格式如下2014-07-28 16:02:44)转换为GMT+00/Lisbon/。问题是,当我尝试使用以下命令时:

  $date = date_format($row['theDate'], 'Y-m-d H:i:sP');
  echo date_timezone_set($date, timezone_open('Europe/Lisbon'));

我的输出字段是空白的,我认为这可能是因为主机服务器已经禁用(不知道为什么,并花费了我整个上午重写)mysqli和其他较新的功能(虽然PHP版本是5.3.8,如果我的记忆没有对我撒谎,它应该默认支持它们),所以我不得不回到mysql。无论如何,我不能转换时区,代码似乎没有错误,应该工作…或者不应该这样吗?

你应该这样做:

$date = date_create($row['theDate']);
date_timezone_set($date, timezone_open('Europe/Lisbon'));
echo date_format($date, 'Y-m-d H:i:sP') . "n";

在你的代码中:

$date = date_format($row['theDate'], 'Y-m-d H:i:sP');
echo date_timezone_set($date, timezone_open('Europe/Lisbon'));

date_format()的第一个参数应该是DateTime Object。我怀疑$row['theDate']被认为只是一个字符串。

也因为它显示一个空白的屏幕,你应该打开错误报告,这样你就可以实际看到发生了什么

相关内容

  • 没有找到相关文章

最新更新