PHP中返回空白数组的iCal解码函数

PHP中返回空白数组的iCal解码函数,php,arrays,icalendar,Php,Arrays,Icalendar,我按照教程使用PHP将iCal数据导入我的网站。出于某种原因,该数组似乎不包含任何数据,即使提要在提要验证程序网站中显示信息。有人能看一下解码器的功能吗?我猜原因很简单,但我是个新手 public function iCalDecoder($file) { $ical = file_get_contents('https://www.google.com/calendar/ical/689afn1fkt0cb59kame9bg56mg%40group.calendar.googl

我按照教程使用PHP将iCal数据导入我的网站。出于某种原因,该数组似乎不包含任何数据,即使提要在提要验证程序网站中显示信息。有人能看一下解码器的功能吗?我猜原因很简单,但我是个新手

    public function iCalDecoder($file) {
    $ical = file_get_contents('https://www.google.com/calendar/ical/689afn1fkt0cb59kame9bg56mg%40group.calendar.google.com/private-584915c30803f5ad6c548f021e84f836/basic.ics');
    preg_match_all('/(BEGIN:VEVENT.*?END:VEVENT)/si', $ical, $result, PREG_PATTERN_ORDER);
    for ($i = 0; $i < count($result[0]); $i++) {
        $tmpbyline = explode("rn", $result[0][$i]);

        foreach ($tmpbyline as $item) {
        $tmpholderarray = explode(":",$item);
        if (count($tmpholderarray) >1) {
            $majorarray[$tmpholderarray[0]] = $tmpholderarray[1];
        }
        }

        if (preg_match('/DESCRIPTION:(.*)END:VEVENT/si', $result[0][$i], $regs)) {
        $majorarray['DESCRIPTION'] = str_replace("  ", " ", str_replace("rn", "", $regs[1]));
        }
        $icalarray[] = $majorarray;
        unset($majorarray);

    }
    return $icalarray;

}
公共函数iCalDecoder($file){
$ical=文件获取内容($ical)https://www.google.com/calendar/ical/689afn1fkt0cb59kame9bg56mg%40group.calendar.google.com/private-584915c30803f5ad6c548f021e84f836/basic.ics');
preg_match_all('/(BEGIN:VEVENT.*?END:VEVENT)/si',$ical$result,preg_PATTERN_ORDER);
对于($i=0;$i1){
$majorary[$tmpholderarray[0]]=$tmpholderarray[1];
}
}
if(preg_match('/DESCRIPTION:(*)END:VEVENT/si',$result[0][$i],$regs)){
$majoraray['DESCRIPTION']=str_replace(“,”,str_replace(“,”,”,$regs[1]);
}
$icalarray[]=$majoraray;
未结算($Majoraray);
}
返回$icalarray;
}

找到了另一个实际工作的函数。感谢您的关注,我希望这对将来的人有所帮助

function icsToArray($paramUrl) {
    $icsFile = file_get_contents($paramUrl);

    $icsData = explode("BEGIN:", $icsFile);

    foreach($icsData as $key => $value) {
        $icsDatesMeta[$key] = explode("\n", $value);
    }

    foreach($icsDatesMeta as $key => $value) {
        foreach($value as $subKey => $subValue) {
        if ($subValue != "") {
            if ($key != 0 && $subKey == 0) {
            $icsDates[$key]["BEGIN"] = $subValue;
            } else {
            $subValueArr = explode(":", $subValue, 2);
            $icsDates[$key][$subValueArr[0]] = $subValueArr[1];
            }
        }
        }
    }

    return $icsDates;
}