我正在一个包含以下mysql行的页面上.总体目标只是将当前周数与当前日期相匹配
$sql = "select distinct weekNum from " . DB_PREFIX . "schedule where DATE_ADD(NOW(),INTERVAL " . SERVER_TIMEZONE_OFFSET . " HOUR)"
As per my research DATE_ADD()允许您将特定天数添加到日期.
因此我假设DATE_ADD(NOW()将当前日期添加到……日期?
INTERVAL在这个声明中做了什么.
任何有助于澄清上述声明的解释的帮助将非常感激.
最佳答案
据我所知,这句话试图管理时区差异
原文链接:https://www.f2er.com/mysql/433534.html INTERVAL " . SERVER_TIMEZONE_OFFSET . " HOUR
应返回不同时区(服务器和偏移量)的差异(以小时为单位),然后将其添加到当前日期以计算实际的调度时间.
从https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-add
DATE_ADD(日期,INTERVAL expr单位),DATE_SUB(日期,INTERVAL expr单位)
这些函数执行日期算术. date参数指定起始日期或日期时间值. expr是一个表达式,用于指定要从开始日期添加或减去的区间值. expr是一个字符串;它可能以 – 以负间隔开始. unit是一个关键字,表示应该解释表达式的单位.