我已经使用XCRUD从数据库中检索数据,但是我遇到了时区问题。
public static $db_time_zone = '+10:00';
我尝试设置默认时区 date_default_timezone_set('澳大利亚/布里斯班');
我在XCRUD文档中没有找到其他答案来支持这是否正确?
我需要将数据库中的时区设置为UTC,但是在页面上显示数据期间,我需要将时区更改为AET。
答案 0 :(得分:1)
有点晚了,但是希望如果您还没有弄清楚的话会有所帮助。
xcrud库将使用服务器的默认时区(xcrud.php
@第16行)。如果您想要的服务器时区是UTC,则您不应更改任何内容。
要显示具有所需时区的日期值,只需对xcrud的functions.php
使用回调即可。
$xcrud->column_callback('date_field', 'display_aet_timezone');
对于您的回调函数:
/**
* Callback to display the time in AET timezone
*/
function display_aet_timezone($value, $fieldname, $primary_key, $row, $xcrud)
{
$dt = new DateTime();
$dt->setTimezone(new DateTimeZone('Australia/Brisbane'));
$dt->setTimestamp(strtotime($value));
return $dt->format('F j, Y @ G:i');
}