如何在独立于用户位置的 JS/jQuery 中正确显示 php 服务器时间和时区?

ska*_*sie 2 javascript php jquery datetime date

首先,我很抱歉提出另一个与网络相关的时间和时区问题。我知道有很多资源和类似的问题,但我仍然无法理解 php 和 js 时间之间的时间转换是如何工作的。

所以这是我的情况。我想将包括时区在内的服务器时间放入 javascript 并在客户端执行某些操作(与此问题无关)。我有这个简短的片段,它不像我期望的那样工作:

获取日期.php

<?php
date_default_timezone_set('Romania/Bucharest');
echo date('D M d Y H:i:s');
?>
Run Code Online (Sandbox Code Playgroud)

索引.html

<body>

  <!-- jQuery -->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>

  <script type='text/javascript'>

  $.get( "get_date.php", function(data) {
    current = new Date(data);
    alert(current);
  });

  </script>

</body>
Run Code Online (Sandbox Code Playgroud)

警报消息

在此处输入图片说明

所以问题是我得到了罗马尼亚的日期和时间(服务器的位置),但是柏林的偏移量和时区(我访问网站的位置)。我想在 Javascript 中正确获取服务器时间、日期、偏移量和时区,与用户位置无关。例如,警报消息应该是Thu Feb 12 2015 13:26:10 GMT+0200(EET)。

也欢迎澄清为什么这不能按预期工作!

Vin*_*eet 5

改变

获取日期.php

<?php
date_default_timezone_set('Romania/Bucharest');
echo date('D M d Y H:i:s');
exit();
?>
Run Code Online (Sandbox Code Playgroud)

还有你的脚本文件。不要将数据传递给 jquery 的 Date 函数。

<script type='text/javascript'>

  $.get( "get_date.php", function(data) {
    alert(data);
  });

</script>
Run Code Online (Sandbox Code Playgroud)

请分享结果。