如何在jquery中创建一个新的Date()与我在特定时区的PHP脚本中的值?

我有一个简单的PHP脚本,它以下列格式返回时间:</ p>

  date_default_timezone_set('Asia / Tokyo'); 
echo(new DateTime()) - &gt; format('F d,YH:i:s O');
</ code> </ pre> \ n

它的输出是:</ p>

  2015年10月1日18:34:35 +0900 
</ code> </ pre>
\ n

现在我在jquery脚本中获取这些数据,我想从这个字符串创建一个新的Date()对象。 但是,我不知道如何在那里包含时区。
到目前为止,我这样做:</ p>

  var serverTime =“2015年10月1日18:34:  35 +0900“; //从服务器获取
var timezone = serverTime.substr(serverTime.length - 5);
var substractedDate = serverTime.substr(0,serverTime.length - 5);
var tokyoTime = new Date(substractedDate );
alert(tokyoTime);
</ code> </ pre>

但它显示了我:</ p>

  Thu Oct 01 2015 18:  40:34 GMT + 0200(中欧夏令时)
</ code> </ pre>

如何创建这样的日期:</ p>

 <  code> Thu Oct 01 2015 18:40:34 GMT + 0900(Asian ...)
</ code> </ pre>

?</ p>
</ div>

展开原文

原文

I have a simple php script that returns time in a following format:

date_default_timezone_set('Asia/Tokyo');
echo (new DateTime())->format('F d, Y H:i:s O');

the output of it is:

October 01, 2015 18:34:35 +0900

Now I fetch this data in my jquery script and I want to create a new Date() object from this string. However, I don't know how to include the timezone there. So far I'm doing like this:

var serverTime = "October 01, 2015 18:34:35 +0900";//fetched from server
var timezone = serverTime.substr(serverTime.length - 5);
var substractedDate = serverTime.substr(0, serverTime.length - 5);
var tokyoTime = new Date(substractedDate);
alert(tokyoTime);

but it shows me:

Thu Oct 01 2015 18:40:34 GMT+0200 (Central Europe Daylight Time)

How can I create a date like this:

Thu Oct 01 2015 18:40:34 GMT+0900 (Asian...)

?

dongshan3759
dongshan3759 下一个:stackoverflow.com/questions/85116/...
接近 5 年之前 回复
dougou6114
dougou6114 我试过了,但我以后需要一个日期对象,我无法将时刻转换为...
接近 5 年之前 回复
doswy02440
doswy02440 你试过这个插件吗?stackoverflow.com/questions/10087819/...
接近 5 年之前 回复
doubeiji2602
doubeiji2602 谢谢,我认为PHP工作正常,因为它返回我2015年10月1日18:34:35+0900,真正的问题是如何在jquery中包含时区创建日期对象...
接近 5 年之前 回复
douchuoxuan3177
douchuoxuan3177 不能测试它,因为我没有任何PHP环境可用。如果使用同一个类的行为不同,你试过吗?因为您在第一个示例DateTime和第二个Date中使用。您还可以检查date_default_timezone_get();在设置tokyoTime之前正确设置。
接近 5 年之前 回复
duandgfh0506
duandgfh0506 哦对不起,我忘了重命名变量把它放在这里,现在我把它固定在这里,问题出现在tokyoTime当然:)
接近 5 年之前 回复
dongzheng8463
dongzheng8463 可能是因为你警告romeTime而不是tokyoTime?
接近 5 年之前 回复

1个回答



使用此代码并通过 date_default_timezone_get()</ code>自定义getDate函数以获取服务器时区:</ p >

  var serverTime =“&lt;?php echo(new DateTime()) - &gt; format('F d,YH:i:s O');?&gt;”; \  n </ code> </ pre> 

或使用TimezoneJS插件:
下载TimezoneJS 来自 。</ p>

使用它:</ p>

 &lt;?php date_default_timezone_set('Asia / Tokyo');  ?&gt; 
var dt = new timezoneJS.Date('&lt;?php echo?&gt;','&lt;?php echo date_default_timezone_get();?&gt;');
</ code> </ pre> \ n </ div>

展开原文

原文

use this code and customize your getDate function by date_default_timezone_get() to get server time zone:

var serverTime = "<?php echo (new DateTime())->format('F d, Y H:i:s O'); ?>";

or use TimezoneJS plugin: Download TimezoneJS from.

And use it:

<?php date_default_timezone_set('Asia/Tokyo'); ?>
var dt = new timezoneJS.Date('<?php echo ?>', '<?php echo date_default_timezone_get();?>');

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐