Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.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 根据忙/闲通话更改图像_Javascript_Php_Css - Fatal编程技术网

Javascript 根据忙/闲通话更改图像

Javascript 根据忙/闲通话更改图像,javascript,php,css,Javascript,Php,Css,我想通过显示“打开”和“关闭”图像来显示企业何时“打开”或“关闭”。诀窍是,我希望根据谷歌日历上的忙/闲通话获取信息。到目前为止,页面本身正在获取正确的信息——问题是,当我使用JavaScript打包数据时,当前时间是正确的,“忙碌”事件的结束时间是正确的,但是开始时间显示在应该的6小时之前,我不知道为什么或如何更正它 因此,PHP目前: <!-- Google Calendar for The Commons --> <?php date_default_timezone_

我想通过显示“打开”和“关闭”图像来显示企业何时“打开”或“关闭”。诀窍是,我希望根据谷歌日历上的忙/闲通话获取信息。到目前为止,页面本身正在获取正确的信息——问题是,当我使用JavaScript打包数据时,当前时间是正确的,“忙碌”事件的结束时间是正确的,但是开始时间显示在应该的6小时之前,我不知道为什么或如何更正它

因此,PHP目前:

<!-- Google Calendar for  The Commons -->
<?php
date_default_timezone_set("GMT");
$request = array(
'items' => array(
    array('id' => 'REMOVED FOR PRIVACY'),
),
'timeMin' => date('c'),
'timeMax' => date('c', strtotime('+2 month')),
);
$curl = curl_init();
$options = array(
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HEADER         => false,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT        => 10,
CURLOPT_POST           => true,
CURLOPT_POSTFIELDS     => json_encode($request),
CURLOPT_HTTPHEADER     => array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen(json_encode($request))
),
CURLOPT_URL            =>
'https://www.googleapis.com/calendar/v3/freeBusy?fields=calendars&key=REMOVED FOR PRIVACY',
CURLOPT_USERAGENT      => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10;rv:36.0) Gecko/20100101 Firefox/36.0',
);
curl_setopt_array($curl, $options);
 $result = curl_exec($curl);
 curl_close($curl);
 echo $result;

第1部分)

如果数据偏移到另一个时区,您可能希望在输入的过程中对其进行调整。无论是您的时区,还是GMT。默认时区指示日期/时间函数的工作方式,它们不会神奇地转换日期和时间。你需要使用已知的偏移量来处理这个问题

您需要注意的是:

 var currentTime = new Date().getHours();
<>你可能想考虑从PHP传递这个值,而不是客户机。TZ的问题出现在执行计算时。否则,它只是某个时间点的表示

第2部分)

这看起来是一个错误的比较:

if ("start" < currentTime && currentTime < "end")
if(“开始”

假设您希望从
数据
对象启动
。所以<代码>数据。开始
。。。该对象/数组的结构不是100%清楚。使用您的
控制台。记录
调用以确保您的比较符合犹太标准。感觉可能你也错过了一个循环?
数据
不是插槽的集合吗?否则方法看起来不错。

这是我在想的一件事,我该如何纠正它?我想说同样的话,但它看起来像是在比较字符串而不是值
if ("start" < currentTime && currentTime < "end")