将 PHP 日期发送为 JavaScript 日期格式

我想将我的PHP服务器时间传递给我的JavaScript文件。

PHP 代码:

date_default_timezone_set('Australia/Perth');
echo date("r");

JavaScript:

$.get('time.php', function(data) {
  today = new Date(data);
  closing = new Date(data);
});

PHP 代码返回 Sun, 18 Mar 2012 12:01:23 +0800,这是澳大利亚/珀斯的正确时间。但这会返回一个无效的 JavaScript 日期对象。

当我尝试将其转换为时间戳时,例如:

 echo strtotime(date("r"));

我得到的 JavaScript 日期 Sun Mar 18 2012 04:03:14 GMT+0000 (WET) (这是今天的值 js var)

如果我使用:

echo gmstrftime('%s');

我得到: 星期六 三月 17 2012 20:04:30 GMT+ 0000 (WET).

任何人都可以帮我吗?


答案 1

Luna的答案中的PHP代码与JavaScript代码并不完全一样。这将完全模仿JavaScript代码:echo date

echo date('D M d Y H:i:s O');

答案 2

您也可以将PHP代码保持原样,并使用JavaScript解析日期:

var date = new Date(Date.parse(DATE));

然后,即使像这样的事情也会起作用:

new Date(Date.parse('11 March 2017'));

哪个通过控制台日志输出(GMT + 1000是因为我在澳大利亚):

Sat Mar 11 2017 00:00:00 GMT+1000

更多信息在这里: https://developer.mozilla.org/enUS/docs/Web/JavaScript/Reference/Global_Objects/Date/parse