从 TimeServer 获取时间

2021-12-23 00:00:00 time php

我正在尝试从 NIST 时间服务器获取时间.我怎样才能做到这一点.我可以使用任何语言,但我更喜欢 php

I am trying to get the Time from a NIST timeserver. How can I do this. I can use any language but I prefer php

推荐答案

<?php
/* Query a time server
   (C) 1999-09-29, Ralf D. Kloth (QRQ.software) <ralf at qrq.de> */
$timeserver = "ntp1.sf-bay.org";
$timercvd = query_time_server($timeserver,37);
if (!$timercvd[1]) { # if no error from query_time_server
  $timevalue = bin2hex ($timercvd[0]);
  $timevalue = abs (HexDec('7fffffff') - HexDec($timevalue) - HexDec('7fffffff')) ;
  $tmestamp = $timevalue - 2208988800; # convert to UNIX epoch time stamp
  $datum = date("Y-m-d (D) H:i:s",$tmestamp - date("Z",$tmestamp)); /* incl time zone offset */
  $doy = (date("z",$tmestamp)+1);

  echo "Time check from time server ",$timeserver," : [<font color="red">",$timevalue,"</font>]";
  echo " (seconds since 1900-01-01 00:00.00).<br>
";
  echo "The current date and universal time is ",$datum," UTC. ";
  echo "It is day ",$doy," of this year.<br>
";
  echo "The unix epoch time stamp is $tmestamp.<br>
";
} #if (!$timercvd)
else {
  echo "Unfortunately, the time server $timeserver could not be reached at this time. ";
  echo "$timercvd[1] $timercvd[2].<br>
";
} # else
?>

来源

相关文章