我正在使用以下网址为我的页面设置默认时区:
date_default_timezone_set("America/Los_Angeles");
我必须在那里设置它,因为我的服务器不允许我改变php.ini文件或.htaccess。问题是,当我使用它时:
NOW()
将当前时间发送到我的数据库,它仍然将其作为UTC时区发送。
我要做的是显示用户在页面上的评论框中显示的评论,并且现在显示错误时区中每条评论的时间。
答案 0 :(得分:1)
date_default_timezone_set
是一个PHP函数。它只会影响PHP的行为。
NOW()
是一个数据库函数,在PHP中更改时区对它没有影响。 NOW()
以YYYY-MM-DD HH:MM:SS
格式返回。
time()
是等效的PHP函数。 time()
只返回自Unix Epoch以来的秒数。要以与NOW()
相同的格式获取输出,请使用date("Y-m-d H-i-s");
。这会自动使用下面的time()
来获取当前系统时间。
了解更多:
答案 1 :(得分:0)
来自手册
date_default_timezone_set - 设置脚本中所有日期/时间函数使用的默认时区
因此,使用date_default_timezone_set函数只会影响这些函数。您应该改为使用time()
。