Erstellen und Exportieren von iCal-Dateien (.ics) mit PHP
iCal bzw. iCalendar ist ein standardisiertes Dateiformat zum Austausch von Kalendereinträgen. Der Standard des Formats ist in RFC 5545 definiert. Dateien dieses Formats werden beispielsweise verwendet, wenn eine Person andere Personen in ihrem Kalender zu einem Termin einlädt. In der Regel wird den Eingeladenen dann eine E-Mail mit einer .ics-Datei geschickt. Eine solche Datei enthält alle Informationen zu dem Termin, sodass die eingeladene Person sie in ihren Kalender importieren kann. Der iCalendar-Standard ermöglicht den plattformübergreifenden Austausch dieser Kalenderinformationen und wird von allen gängigen Kalenderanbietern wie Google, Microsoft, Apple, Open-Xchange und vielen anderen unterstützt.
Da wir bei var-lab IT schon häufig Features in Webanwendungen umgesetzt haben, die mit Terminen zu tun hatten, ist das Erstellen solcher iCal-Files für uns ein häufiges Szenario. Dafür gibt es diverse Komponenten und Code-Bibliotheken. Eine davon ist die iCal-Komponente elucheo/ical, die in den letzten rund zehn Jahren als Open-Source-Paket auf GitHub entwickelt wurde und in vielen Projekten eingesetzt wird. Leider scheint die Entwicklung vor ein paar Monaten eingestellt worden zu sein. Deshalb haben wir einen Fork vom Quellcode erstellt und führen die Entwicklung nun selbst weiter. Dabei werden wir auch einige der auf GitHub angesammelten Issues bearbeiten und diverse neue Features implementieren. Unter anderem haben wir bereits einige Refactorings vorgenommen, um vollständige PHP-8.4-Kompatibilität herzustellen.
Der Quellcode ist in unserer GitLab-Instanz zu finden
Dokumentation zum Quellcode
Newsletter abonnieren
Sie erhalten einmal im Monat interessante News über var-lab IT und unsere Arbeit an Open-Source.