.ics ファイルを解析するライブラリは多数あると思われますが、私にとって非常にうまく機能する例を 1 つ紹介します。
このライブラリを使用しました: http://www.phpclasses.org/browse/file/16660.html
VEVENT、VTODO、VJOURNAL、VFREEBUSY、VALARM、VTIMEZONE(あなたが求めていたもの)など、さまざまなタイプのICalコンポーネントを柔軟に処理できます。
例:
<pre><?php
//
// Open library
//
require_once( "iCalcreator.class.php" ) ;
//
// Demo ICal file contents
//
$string = <<<EOS
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
BEGIN:VTIMEZONE
TZID:US-Eastern
LAST-MODIFIED:19870101T000000Z
BEGIN:STANDARD
DTSTART:19971026T020000
RDATE:19971026T020000
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19971026T020000
RDATE:19970406T020000
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
END:DAYLIGHT
END:VTIMEZONE
END:VCALENDAR
EOS
;
//
// There is no direct string parsing functionality,
// so first create a temporary file
//
$filename = tempnam( ".", "" ) ;
$f = fopen($filename,"w") ;
fwrite( $f, $string );
fclose($f);
//
// ... parse it into an object
//
$var = new vcalendar();
$var->parse($filename);
var_dump( $var );
$event = $var->components[0] ;
var_dump( $event->createDtstamp() );
//
// ... and finally remove all temporary data.
//
unlink($filename);