0

这是我的脚本,它在表格中输入了一个条目orders。但是,目前插入表格的时间并未显示为我的当地时间!

//Retrieve variables
$tableNum = $_POST['tableNum'];
$coverNum = $_POST['coverNum'];

//GET DATE & SET TIME ZONE
date_default_timezone_set(Europe/Dublin);

$date = date("Y-m-d H:i:s", time());

//construct query & execute
$sql = "INSERT INTO orders (covers, `table`, placed) VALUES ('$coverNum', '$tableNum', '$date') ";
$result = mysql_query($sql) or die(mysql_error());
$numrows = mysql_affected_rows();

谁能建议我可以修复我的代码以在欧洲/都柏林显示的方法?我表中的列是TIMESTAMP.

使用上面的代码,我的输出是这样的:

21/02/2013 - 14:30

应该是这样的:

21/02/2013 - 21:30

非常感谢!

4

3 回答 3

3

我认为您需要在欧洲/都柏林添加报价

date_default_timezone_set('Europe/Dublin');
于 2013-02-21T21:40:05.473 回答
0

更改时区时,您需要提供这样的字符串

date_default_timezone_set("Europe/Dublin");

更多在这里

于 2013-02-21T21:41:16.427 回答
0

这是另一种方法:

$datetime = new DateTime(null, new DateTimeZone('Europe/Dublin'))
$datetime->format("Y-m-d H:i:s");

我喜欢使用 DateTime,因为它使处理时区变得简单。

于 2013-02-21T21:41:23.630 回答