iCalでカレンダーイベントを作成するPHPスクリプトを作成しようとしています。私はこことGoogleで検索し、iCalのイベントをPHP製のカレンダーにインポートすることについての結果しか出てこない。これは私が必要とするものの反対です。PHPでiCalカレンダーイベントを作成する
出発点がないため、私はコードを含めません。私はどこから始めるべきですか?
iCalでカレンダーイベントを作成するPHPスクリプトを作成しようとしています。私はこことGoogleで検索し、iCalのイベントをPHP製のカレンダーにインポートすることについての結果しか出てこない。これは私が必要とするものの反対です。PHPでiCalカレンダーイベントを作成する
出発点がないため、私はコードを含めません。私はどこから始めるべきですか?
数年前、私はiCalendarライブラリを作成し始めました。 PHP 5はなく、そこには多くの機能はありませんが、かなりのアルファ段階です(と私は実際にそれをあきらめました):
はそれが役に立てば幸い
ここから開始します。これは、icalendarイベントのファイル形式を提供します。あなたは、カスタムデータを出力するため、このようなファイルをPHPを使用することができます。私は、過去のプロジェクトのための基準点として、これを使用しました
http://en.wikipedia.org/wiki/ICalendar
。
スタート地点ありがとうございました。これは多くの助けになります。 – Shattuck
(https://gist.github.com/jakebellacera/635416から)
<?
// 1. Set the correct headers for this file
header('Content-type: text/calendar; charset=utf-8');
header('Content-Disposition: attachment; filename=' . $filename);
// 2. Define helper functions
// Converts a unix timestamp to an ics-friendly format
// NOTE: "Z" means that this timestamp is a UTC timestamp. If you need
// to set a locale, remove the "\Z" and modify DTEND, DTSTAMP and DTSTART
// with TZID properties (see RFC 5545 section 3.3.5 for info)
//
// Also note that we are using "H" instead of "g" because iCalendar's Time format
// requires 24-hour time (see RFC 5545 section 3.3.12 for info).
function dateToCal($timestamp) {
return date('Ymd\THis\Z', $timestamp);
}
// Escapes a string of characters
function escapeString($string) {
return preg_replace('/([\,;])/','\\\$1', $string);
}
// 3. Echo out the ics file's contents
?>
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTEND:<?= dateToCal($dateend) ?>
UID:<?= uniqid() ?>
DTSTAMP:<?= dateToCal(time()) ?>
LOCATION:<?= escapeString($address) ?>
DESCRIPTION:<?= escapeString($description) ?>
URL;VALUE=URI:<?= escapeString($uri) ?>
SUMMARY:<?= escapeString($summary) ?>
DTSTART:<?= dateToCal($datestart) ?>
END:VEVENT
END:VCALENDAR
DESCRIPTIONフィールドを埋める方法はRFCに準拠しておらず、動作しません。 – datayeah
これを試してみてください、あなたはiCalの、アップルのカレンダーアプリケーション、またはiCalendar形式、ファイルフォーマットを意味していますか? (とはいえ、前者を解決するにはおそらく後者が関わってくるだろう...) –
清算の質問をありがとう。 iCal(Appleカレンダー)イベントを作成する必要があります。 – Shattuck
githubでこのlibが見つかりました:https://github.com/markuspoerschke/iCal –