API контактов Google - выбор данных события - PullRequest
0 голосов
/ 09 сентября 2011

Я пытаюсь получить информацию, основанную на «событиях» в контактах Google (т. Е. На годовщине и т. Д.), «Они, кажется, называют их« событиями »».

Так что тем не менее. Мне удалось получить некоторые данные в сокращенном очищенном формате. Это XML, с которым я работаю, чтобы получить эту информацию.

[13] => Zend_Gdat

a_App_Extension_Element Object
        (
            [_rootElement:protected] => event
            [_extensionElements:protected] => Array
                (
                    [0] => Zend_Gdata_App_Extension_Element Object (
                            [_rootElement:protected] => when
                            [_extensionAttributes:protected] => Array (
                                    [startTime] => Array (
                                            [namespaceUri] => 
                                            [name] => startTime
                                            [value] => 2009-05-09))
                            [_text:protected] => 
                        )
                )

            [_extensionAttributes:protected] => Array (
                    [rel] => Array (
                            [namespaceUri] => 
                            [name] => rel
                            [value] => anniversary ))
            [_text:protected] => 
        )

Итак, что я сделал, чтобы получить ТИП СОБЫТИЯ, я до сих пор использую этот код.

//    Get All Events
foreach ($xml->event as $e) {                       
    if($e['rel'] == "anniversary") {
        // echo "This is true, this is anniversary";
    }
}

И для получения фактического ЗНАЧЕНИЯ события (время начала). Я ДУМАЛ, что я бы использовал что-то вроде этого для каждого цикла.

foreach ($xml->event as $e) {                       
    echo $e->when['startTime'];
}

Но это просто эхо, NULL. Я перепробовал много вариантов и, похоже, не могу его получить, хотя не уверен, что это только из-за моей чрезмерной усталости. Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 13 сентября 2011

Мне удалось найти решение.

//    Get All Events
foreach ($xml->event as $e) {
    $defaults = $e->children('http://schemas.google.com/g/2005'); 

    if($e['rel'] == "anniversary") {
        $obj->anniversary = (string) $defaults->when->attributes()->startTime;
    }
}
...