Почему этот вывод пуст? - PullRequest
0 голосов
/ 17 июня 2011

Я знаю, что, должно быть, делаю что-то не так.Когда я делаю это:

<code> echo '<pre>';
 print_r($event->when);
 echo '
';

Я получаю это:

 Array
(
[0] => Zend_Gdata_Extension_When Object
    (
        [_rootElement:protected] => when
        [_reminders:protected] => 
        [_startTime:protected] => 2011-06-16T10:00:00.000-05:00
        [_valueString:protected] => 
        [_endTime:protected] => 2011-06-17T11:00:00.000-05:00
        [_rootNamespace:protected] => gd
        [_rootNamespaceURI:protected] => 
        [_extensionElements:protected] => Array
            (
            )

        [_extensionAttributes:protected] => Array
            (
            )

        [_text:protected] => 
        [_namespaces:protected] => Array
            (
                [atom] => Array
                    (
                        [1] => Array
                            (
                                [0] => http://www.w3.org/2005/Atom
                            )

                    )

                [app] => Array
                    (
                        [1] => Array
                            (
                                [0] => http://purl.org/atom/app#
                            )

                        [2] => Array
                            (
                                [0] => http://www.w3.org/2007/app
                            )

                    )

                [gd] => Array
                    (
                        [1] => Array
                            (
                                [0] => http://schemas.google.com/g/2005
                            )

                    )

                [openSearch] => Array
                    (
                        [1] => Array
                            (
                                [0] => http://a9.com/-/spec/opensearchrss/1.0/
                            )

                        [2] => Array
                            (
                                [0] => http://a9.com/-/spec/opensearch/1.1/
                            )

                    )

                [rss] => Array
                    (
                        [1] => Array
                            (
                                [0] => http://blogs.law.harvard.edu/tech/rss
                            )

                    )

            )

    )

)

Затем я пытаюсь получить startTime, выполнив это:

$StartTime = $event->when->startTime;

Но я неполучить что-нибудь.

И все же, когда я делаю это:

 pr($event->published);

Я получаю это:

Zend_Gdata_App_Extension_Published Object
(
[_rootElement:protected] => published
[_rootNamespace:protected] => atom
[_rootNamespaceURI:protected] => 
[_extensionElements:protected] => Array
    (
    )

[_extensionAttributes:protected] => Array
    (
    )

[_text:protected] => 2011-06-15T03:32:14.000Z
[_namespaces:protected] => Array
    (
        [atom] => Array
            (
                [1] => Array
                    (
                        [0] => http://www.w3.org/2005/Atom
                    )

            )

        [app] => Array
            (
                [1] => Array
                    (
                        [0] => http://purl.org/atom/app#
                    )

                [2] => Array
                    (
                        [0] => http://www.w3.org/2007/app
                    )

            )

    )

)

, и я могу сделать это:

$dateAdded = $event->published->text;
echo $dateAdded;

и я вижу вывод ...

Ответы [ 2 ]

2 голосов
/ 17 июня 2011

Согласно официальной документации Zend_Gdata_Extension_When , существует метод под названием getStartTime(), который даст вам время.

Если вы сделаете $event->when[0]->getStartTime() или $event->when[0]->startTime, вы получите время начала.

1 голос
/ 17 июня 2011

startTime помечен как защищенный.Вы не можете ссылаться на это извне, как вы это сделали.В этом объекте должна быть функция getter getTartTime (), которая позволит вам ссылаться на него публично.

РЕДАКТИРОВАТЬ: Также он возвращает массив объектов - не один объект, поэтому вам нужно ссылаться на него как: $event[0]->getterFunction() или перебрать массив с foreach, обращаясь к отдельным объектам впетля

...