2013-11-24 50 views
0

我正在嘗試更改現有ics文件的每個事件的類別。我有一個新類別的數組,並希望遍歷每個事件並根據索引分配新類別。爲此我使用iCalcreatoriCalcreator:更改ics文件中每個事件的類別

$event_categories = array(); 

// ... 
// populating $event_categories with data 
// ... 

$config = array("unique_id" => "cat_mod", "filename" => "myical.ics"); 
$v = new vcalendar($config); 
$i = 0; 

$v->parse(); 
while($vevent = $v->getComponent("vevent")) { 
    $vevent->setProperty("categories", $event_categories[$i]); 
    $i++; 
    continue; 
} 

$v->returnCalendar(); 

但這不起作用。類別仍然相同。

請問有人能幫我嗎?

回答

1

summary file中有一個示例(請參閱「編輯」部分)。它表明您需要記住uid並使用它重新插入修改的事件。這裏是一個精簡的例子:

$v = new vcalendar($config);   
$v->parse(); 
while($vevent = $v->getComponent("vevent")) { 
    $uid = $vevent->getProperty("uid"); 
    // ... change event .. 
    $v->setComponent ($vevent, $uid); 
}