使用转换后的Unix时间戳查询数据库
发布时间:2022-10-04 11:29:21 所属栏目:Unix 来源:
导读: |我目前正在使用此:
$rawsql = \"SELECT
*
FROM
_erc_foffices n
INNER JOIN
_erc_openings o ON n.id = o.branch_id AND o.dotw = DAYOFWEEK(CURRENT_DATE())
$rawsql = \"SELECT
*
FROM
_erc_foffices n
INNER JOIN
_erc_openings o ON n.id = o.branch_id AND o.dotw = DAYOFWEEK(CURRENT_DATE())
|
|我目前正在使用此: $rawsql = \"SELECT * FROM _erc_foffices n INNER JOIN _erc_openings o ON n.id = o.branch_id AND o.dotw = DAYOFWEEK(CURRENT_DATE()) INNER JOIN _erc_openings_times t ON o.id = t.opening_id WHERE ( UNIX_TIMESTAMP(CURRENT_TIMESTAMP()) BETWEEN UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.open)) AND UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.close)) ) AND ( n.id = %d ) ;\"; 查询数据库,并从大使馆返回所有详细信息(如果该大使馆当前处于打开状态)。现在,我需要找出变量 $current_local_time 中存储的时间是否在两个数据库值之间unix数据库,而不是than1。时间表时间需要存储在本地时间而不是伦敦的时间,因此这就是我要转换它们的原因。我尝试更换 WHERE ( UNIX_TIMESTAMP(CURRENT_TIMESTAMP()) BETWEEN UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.open)) AND UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.close)) ) 与 WHERE ( UNIX_TIMESTAMP($current_local_time) BETWEEN UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.open)) AND UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.close)) ) 但我只收到错误消息。有人可以告诉我我该怎么做吗?谢谢你的帮助编辑: $current_local_time 变量如下所示: date_default_timezone_set(\'Europe/London\'); $time = date(\"H:i\", time()); $myDateTime = new DateTime($time, new DateTimeZone(\'GMT\')); $myDateTime->setTimezone(new DateTimeZone($timezone)); $current_local_time = $myDateTime->format(\'H:i:s\'); 并以对方当前的时间输出。编辑2:我已将$ current_local_time更改为此: $current_local_time = $myDateTime->format(\'H:i:s\'); $timestamp2 = strtotime($current_local_time); 以及where子句: WHERE ( \'$timestamp2\' BETWEEN UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.open)) AND UNIX_TIMESTAMP(CONCAT(CURRENT_DATE(), \' \', t.close)) ) 可以,但是如果将 t.close 设置为23:30,则直到23:31才真正关闭。有没有办法花一点时间来解决这个问题? (编辑:我爱制作网_池州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐

浙公网安备 33038102330577号