Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript(和PHP)获取样例Internet时间_Php_Javascript_Jquery_Time - Fatal编程技术网

使用javascript(和PHP)获取样例Internet时间

使用javascript(和PHP)获取样例Internet时间,php,javascript,jquery,time,Php,Javascript,Jquery,Time,我想给我的用户选择时间格式的能力 我现在是如何尝试的: function startTime(){ var d = new Date(), h = d.getHours(), m = d.getMinutes(), s = d.getSeconds(), time = "@"+parseFloat((h*3600+m*60+s*1)*0.01157,10).toString().replace(/(\.\d{1,2})\d*

我想给我的用户选择时间格式的能力

我现在是如何尝试的:

function startTime(){
    var d = new Date(),
        h = d.getHours(),
        m = d.getMinutes(),
        s = d.getSeconds(),
        time = "@"+parseFloat((h*3600+m*60+s*1)*0.01157,10).toString().replace(/(\.\d{1,2})\d*$/, "$1");

    $('#time').html(time);
}
根据描述,样例时间是无时区偏移的,因此使用用户的系统时间将不起作用

我可以想到的另一种方法是向php文件发送ajax请求,该文件通过内置的日期'B'函数返回当前样本时间,但我不能使用2位小数,而且它会产生不必要的流量

$.ajax({type:'GET',url:'../time.php'}).done(function(data){ var time = data });
time.php:

<?php echo date("B") ?>
一定有某种方法可以在一个时间内返回样本时间。格式,我很想知道

startTime函数是使用SetIntervalsStartTime 750调用的,因此我需要一个可以在该时间段内工作的解决方案。

JavaScript有一个函数。getTimezoneOffset返回从GMT开始的偏移量(以分钟为单位)

只要拿棺材,瑞士时区偏移+60分钟,减去当地时区偏移。差值应为偏移量,以提供样例时间。然后在此基础上进行节拍计算

您也可以只使用.getUTCHours、.getUTCMinutes等,基本上是GMT。GMT是瑞士贝尔市前一小时。因此,您只需在计算中添加一个小时即可获得样本时间


演示:

我想让@JohnBoker在评论中提出的解决方案更加清晰可见。保罗·菲利波夫(Paul Philippov)写的一本书,我一直用到今天。该方法采用单个参数,指定要返回的小数量

function startTime(){
    var d = new Date(),
        time = d.toInternetTime(2);

    $('#time').html(time);
}
setInterval(startTime,500);
在下面尝试一下:

函数起始时间{ var d=新日期, 时间=d.toInternetTime2; $'time'.htmltime; } SetIntervalsStartTime,500 正文{margin:0}时间{font-family:monospace;显示:块;宽度:100%;字体大小:2em;高度:2em;显示:块;文本对齐:中心;位置:绝对;顶部:calc50%-1em}
我刚刚有理由写一个swatch beat函数,所以我将在这里为子孙后代发帖:

函数getSwatchBeatdate,places=3{ 退货+日期+3.6e6%8.64e7/8.64e4.toFixedplaces; } 设d=新日期;
log`Current-swatch beat for${d.tolocalString}是${getswatchbeat,1}`;仅供参考:是的,斯沃琪在手表制造商@ficuscr它已经在问题中链接了…亲爱的旧时间戳呢?该死的营销这只是一个营销策略,没有标准化的函数、转换器或API,时间被划分为节拍,使用十进制,而不是每分钟60秒、每小时60分钟等。这使得制作真正有效的东西需要大量的工作。用这个怎么样?此作品是在BSD许可下创作的。见原文。