亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ICS 將根據時區添加到日歷時調整日期

ICS 將根據時區添加到日歷時調整日期

PHP
嗶嗶one 2023-04-28 14:45:23
我已經下載了一個 PHP 腳本,它允許我為預定的網絡研討會生成可下載的 ICS。日期和時間設置為 WP ACF 發布。此外,WordPress 時區設置為 America/Los_Angeles。但我的時區位于菲律賓馬尼拉。這是代碼。// ACF Date$wdate = get_sub_field('date'); // Tuesday, June 16, 2020$stime = get_sub_field('start_time'); // 11:00 am$etime = get_sub_field('end_time'); // 11:30 am// Prepare Date using date_i18n()// Starting DateTime$st_gmt = $wdate.' '.$stime;$st = get_date_from_gmt($st_gmt, 'Y-m-d H:i:s');$date_start = date_i18n(get_option('date_format').' '.get_option('time_format'), strtotime($st));// Output: June 16, 2020 11:00 AM// Ending DateTime$et_gmt = $wdate.' '.$etime;$et = get_date_from_gmt($et_gmt, 'Y-m-d H:i:s');$date_end = date_i18n(get_option('date_format').' '.get_option('time_format'), strtotime($et));// Output: June 16, 2020 11:30 AM每當我測試下載 .ics 日歷文件時,它應該是June 17, 2020 2:00 AM & June 17, 2020 2:30 AM,但輸出始終設置為June 16, 2020 7:00 PM & June 16, 2020 7:30 PM,因為我來自菲律賓馬尼拉,而事件設置為洛杉磯。這是實際 ICS 文件的輸出。BEGIN:VCALENDARVERSION:2.0X-WR-TIMEZONE:America/Los_AngelesPRODID:-//hacksw/handcal//NONSGML v1.0//ENCALSCALE:GREGORIANBEGIN:VTIMEZONETZID:America/Los_AngelesEND:VTIMEZONEBEGIN:VEVENTLOCATION:Webinar ZoomDESCRIPTION:This is my descriptionDTSTART:20200616T110000ZDTEND:20200616T113000ZSUMMARY:This is my summaryURL;VALUE=URI:DTSTAMP:20200603T051015ZUID:5ed6c0375fbf6END:VEVENTEND:VCALENDAR問題:當用戶下載文件并添加到他們的日歷時,如何輸出 ics 文件以匹配用戶時區?
查看完整描述

1 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

我假設您尚未明確提出的問題是時間如何關聯。

首先請注意, ics VTIMEZONE 用于時區定義,即當實際夏令時發生變化時,它不用于表示事件是在洛杉磯時間。如果 DST 在該時區相關,它實際上應該包含一系列夏令時日期。

VTIMEZONE 沒有說明 VEVENTS 的開始和結束時間。

在此文件中,事件 DTSTART 定義為 UTC 時間(請參閱 Z?)上午 11 點。這相當于洛杉磯時間凌晨 4 點和馬尼拉時間晚上 7 點。

時間在應用程序中的顯示方式取決于用戶和應用程序的時區。應用程序應將 ics 事件時間轉換為用戶時區。


查看完整回答
反對 回復 2023-04-28
  • 1 回答
  • 0 關注
  • 239 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號