相對於當前(系統)時區,獲取PHP中UTC時間偏移的最簡單方法是什麼?UTC的抵消在PHP中
26
A
回答
59
date('Z');
返回UTC在幾秒鐘內偏移。
16
$this_tz_str = date_default_timezone_get();
$this_tz = new DateTimeZone($this_tz_str);
$now = new DateTime("now", $this_tz);
$offset = $this_tz->getOffset($now);
未經檢驗的,但應該工作
+0
有用的,如果您使用的是PHP 5 DateTime類,但我不是。 – 2008-10-11 01:36:40
-2
date("Z")
將返回相對於服務器時區而不是用戶機器時區的UTC偏移量。要獲得用戶的機器時區,您可以使用javascript getTimezoneOffset()
函數,該函數返回UTC時間與當地時間之間的時差,以分鐘爲單位。
<script type="text/javascript">
d = new Date();
window.location.href = "page.php?offset=" + d.getTimezoneOffset();
</script>
而且在page.php
持有你的PHP代碼,你可以做你想做與偏移值什麼的。或者不是重定向到另一個頁面,您可以根據您的需要通過Ajax將偏移值發送到您的php腳本。
10
我做了一個奧斯卡做了些微修改的版本。
date_default_timezone_set('America/New_York');
$utc_offset = date('Z')/3600;
這給了我從我的時區EST到UTC的偏移量,以小時爲單位。
$ utc_offset的值爲-4。
11
echo date('P'); //將輸出的東西+02:00或-04:00
1
這是相同的JavaScript date.getTimezoneOffset()
功能:
<?php
echo round(date('Z')/-60,2);
?>
相關問題
- 1. Python的UTC抵消值
- 2. 在WP7中獲取UTC抵消
- 3. UTC/GMT:獲得抵消
- 4. TimeZone要在PHP中抵消的位置
- 5. PHP抵消錯誤
- 6. 非法抵消PHP
- 7. 如何在有UTC抵消時創建tzinfo?
- 8. PHP $ _SESSION未定義,抵消
- 9. 未定義抵消PHP
- 10. PHP未定義抵消:1
- 11. GMT抵消PHP時區
- 12. ASP.NET WebAPI XmlFormatter缺少日期的UTC抵消
- 13. PHP - 通知:未定義抵消:0在
- 14. 未定義抵消:在$行錯誤[] PHP
- 15. 抵消scrollTop的
- 16. 將JavaScript日期()轉換爲UTC和抵消時間
- 17. ElasticSearch 5.1.1 + Grafana 4.1.0時間似乎被UTC差異抵消
- 18. 轉換UTC時間和抵消日期時間
- 19. 如何在不抵消背景的情況下抵消文本
- 20. 未定義的抵消:2(PHP函數)
- 21. 的UITableView:抵消selectedBackgroundView
- 22. UIGestureRecognizer抵消的TargetView
- 23. datepicker.iso8601Week抵消
- 24. 抵消UIRefreshControl
- 25. DatetimeIndex抵消
- 26. 計算抵消
- 27. PHP錯誤:未定義抵消:10
- 28. 未定義抵消:0與PHP數組
- 29. PHP:未定義抵消:3 - preg_match_all
- 30. xgboost,抵消風險?
謝謝。不幸的是,PHP要求你調用date_default_timezone_set()。如果將其設置爲GMT,則來自數據庫的日期仍將在本地時間,但日期('Z')將返回零。如果您將其設置爲服務器的時區,那麼您可以在包含文件中硬編碼服務器與GMT的偏移量。不可思議的是,沒有簡單的方法來做到這一點。編輯:我發現你可以做date_default_timezone_set(date_default_timezone_get())。如何asinine! – Oscar 2012-07-31 21:25:06
日期('Z')以秒爲單位返回GMT偏移量 – Dahomz 2017-05-02 12:29:30
返回0. – Adry 2018-02-21 17:14:09