将浏览器php日期转换为javascript日期?

将浏览器php日期转换为javascript日期?,php,javascript,Php,Javascript,我正在构建一个JavaScript倒计时,这需要依赖于服务器时间,但我无法以交叉浏览器的方式将php时间传输到JavaScript。这在所有现代浏览器中都能很好地工作,但在较旧的浏览器(日期未定义)中会停止工作。如果我选择date(“Y-m-dh:I:s)而不是date(“Y-m-d\TH:I:s\Z)则效果会更好,但在IE10中不会 <?php switch ($day) { case 'Sat': $start = "10"; $stop

我正在构建一个JavaScript倒计时,这需要依赖于服务器时间,但我无法以交叉浏览器的方式将php时间传输到JavaScript。这在所有现代浏览器中都能很好地工作,但在较旧的浏览器(日期未定义)中会停止工作。如果我选择
date(“Y-m-dh:I:s)
而不是
date(“Y-m-d\TH:I:s\Z)
则效果会更好,但在IE10中不会

<?php

 switch ($day) {
    case 'Sat':
        $start = "10";
        $stop  = "16";
        break;

   case 'Sun':
        $start = "11";
        $stop  = "16";
       break;

    default:
        $start = "10";
        $stop  = "19";
        break;
}

 ?>
<script>
     jQuery(function(){

      var open = new Date("<?php echo date("Y-m-d\TH:i:s\Z",strtotime("today {$start}:00:00")); ?>");
      var end = new Date("<?php echo date("Y-m-d\TH:i:s\Z",strtotime("today {$stop}:00:00")); ?>");
      var _second = 1000;
      var _minute = _second * 60; 
      var _hour = _minute * 60;
      var _day = _hour * 24;
      var start  = new Date("<?php echo date("Y-m-d\TH:i:s\Z"); ?>") ;
});
</script> 

jQuery(函数(){
var open=新日期(“”);
var end=新日期(“”);
var_秒=1000;
var _minute=_second*60;
变量(小时)=(分钟)*60 ;;
var _日=_小时*24;
var开始=新日期(“”);
});

ECMAScript/JavaScript官方认可的唯一格式是:

格式如下:
YYYY-MM-DDTHH:MM:ss.sssZ

但是,这是ECMAScript 5的新特性。以前的版本将支持留给每个供应商来决定

您可以尝试使用而不是字符串

var open = new Date(<?php echo strtotime("today {$start}:00:00") * 1000; ?>);
// ...
var start = new Date(<?php echo time() * 1000; ?>);
var open=新日期();
// ...
var start=新日期();

JavaScript和PHP都使用基于UTC的时间戳,只是秒(PHP)与毫秒(JS)的差值。

ECMAScript/JavaScript官方认可的唯一格式是:

格式如下:
YYYY-MM-DDTHH:MM:ss.sssZ

但是,这是ECMAScript 5的新特性。以前的版本将支持留给每个供应商来决定

您可以尝试使用而不是字符串

var open = new Date(<?php echo strtotime("today {$start}:00:00") * 1000; ?>);
// ...
var start = new Date(<?php echo time() * 1000; ?>);
var open=新日期();
// ...
var start=新日期();
JavaScript和PHP都使用基于UTC的时间戳,只是秒(PHP)与毫秒(JS)的差值而已。

首先,JavaScript date()接受毫秒或日期字符串

毫秒类似于php
time()

日期字符串应使用以下格式:
2012年10月13日11:13:00

根据您的情况,我建议使用
strotime()
time()
返回时间戳,但在传递到javascript之前需要*1000

Ref:

首先,Javascript date()接受毫秒或日期字符串

毫秒类似于php
time()

日期字符串应使用以下格式:
2012年10月13日11:13:00

根据您的情况,我建议使用
strotime()
time()
返回时间戳,但在传递到javascript之前需要*1000

参考: