【发布时间】:2017-02-18 10:24:53
【问题描述】:
我在一个雄辩的查询中有以下行:
->whereBetween('issue_date', [$fiscal_start, $fiscal_end])
$fiscal_start 和 $fiscal_end 在用户的本地时区中,issue_date(在表中)以 UTC 存储。这三个都是时间戳。
$fiscal_start 示例:
Carbon {#639 ▼
+"date": "2016-07-01 00:00:00.000000"
+"timezone_type": 3
+"timezone": "Australia/Sydney"
}
$orgTz 包含"Australia/Sydney"
在比较之前将whereBetween语句中的issue_date转换为本地时区的正确语法是什么?
我尝试了一些变体,但均未成功:
->whereRaw("CONVERT_TZ(issue_date, 'UTC', {$orgTz}) BETWEEN {$fiscal_start} AND {$fiscal_end}")
【问题讨论】:
标签: php mysql laravel-5.3