gpt4 book ai didi

php - 将单个 Google 日历事件导出到 ICS?

转载 作者:可可西里 更新时间:2023-10-31 23:25:10 29 4
gpt4 key购买 nike

我目前正在研究在网页上显示来自多个 Google 日历的事件列表的可能性。目前,我正在使用 WordPress 的 Google Calendar Events 插件来显示网站上的事件(防火墙后面的开发网站,所以我无法共享链接);但我想看看是否有任何简单的方法可以为每个单独的事件动态生成 ICS 文件。

我们希望允许网站访问者将单个事件添加到他们的日历中,但 Google 日历数据 API 似乎只提供以 ICS 格式下载整个日历的选项。我尝试简单地将带有 eid(事件 ID)的查询字符串附加到 ICAL 提要地址的末尾,但这仍然会打开标准的 Google ICAL 提要,其中包括日历中当前包含的所有事件。

我对从头开始动态构建 ICS 文件有点熟悉,并且过去做过一次,从本地 Perl 日历程序中提取事件并为每个事件生成一个 ICS 文件;但是如果有任何预构建的 API 或 PHP 类已经设置为从单个 Google 日历事件构建 ICS 文件,我更愿意使用它们。

最佳答案

它非常简单,真的只是一个页面,试试这个:(当然你需要替换你自己的变量......)

<?php
/*
* generates calendar ics file
*/

if(
empty($_GET['summary']) ||
empty($_GET['dtstart']) ||
empty($_GET['dtend'])
){
header ("Location: /diary/this-week") ;
exit();
}

header("Content-type: text/calendar");
header("Content-Disposition: attachment; filename=".urlencode($_GET['summary']).'-'.time().".ics");
header("Pragma: no-cache");
header("Expires: 0");
echo 'BEGIN:VCALENDAR
VERSION:2.0
PRODID:councilsites
METHOD:PUBLISH
BEGIN:VEVENT
URL:'. htmlentities( $_GET['url'] ) .'
UID:'. htmlentities( $_GET['url'] ) .'
SUMMARY:'. htmlentities( $_GET['summary'] ) .'
DTSTAMP:'. date('Ymd\THis\Z') .'
DTSTART:'. htmlentities( $_GET['dtstart'] ) .'
DTEND:'. htmlentities( $_GET['dtend'] ) .'
LOCATION:'. htmlentities( $_GET['location'] ) .'
END:VEVENT
END:VCALENDAR';


?>

关于php - 将单个 Google 日历事件导出到 ICS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6429907/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com