如何在PHP中获得对象的受保护属性值



我有一个我想获得dateTime的受保护属性的对象。

1)modelData->start->dateTime //2017-05-10T17:00:00+05:30
2)modelData->end->dateTime //2017-05-10T17:20:00+05:30

对象看起来像

Google_Service_Calendar_Event Object
(
    [collection_key:protected] => recurrence   
    [attachmentsType:protected] => Google_Service_Calendar_EventAttachment   
    [created] => 2017-05-08T07:05:43.000Z
    [creatorType:protected] => Google_Service_Calendar_EventCreator
    [creatorDataType:protected] => 
    [description] => 
    [endType:protected] => Google_Service_Calendar_EventDateTime
    [endDataType:protected] => 
    [endTimeUnspecified] => 
    [etag] => "2988454353000000"
    [extendedPropertiesType:protected] => Google_Service_Calendar_EventExtendedProperties
    [extendedPropertiesDataType:protected] => 
    [gadgetType:protected] => Google_Service_Calendar_EventGadget   
    [visibility] => 
    [internal_gapi_mappings:protected] => Array
        (
        )
    [modelData:protected] => Array
        (
            [creator] => Array
                (
                    [email] => pickzy.nettest@gmail.com
                    [self] => 1
                )
            [organizer] => Array
                (
                    [email] => pickzy.nettest@gmail.com
                    [self] => 1
                )
            [start] => Array
                (
                    [dateTime] => 2017-05-10T17:00:00+05:30
                    [timeZone] => Asia/Calcutta
                )
            [end] => Array
                (
                    [dateTime] => 2017-05-10T17:20:00+05:30
                    [timeZone] => Asia/Calcutta
                )
            [reminders] => Array
                (
                    [useDefault] => 1
                )
        )
)

php脚本:

我无需产品

就可以获得ETAG值
echo "-----".$result->getEtag(); //"2988454353000000" 

我无法使用Producted

获得启动和最终价值
echo "-----".$result = $event->getData(); //Error undefined method

我的参考:

在受保护的对象中获取字符串

如何获得PHP中对象的受保护特性

请建议!

可见性

宣布受保护的成员只能在类中访问 本身并通过继承类。

如果您需要从外部访问该物业,请选择一个:•不要将其声明为保护,而是将其公开•编写几个功能以获取并设置值(Getters and Setters(

如果您不想修改原始类(因为它是 您不想搞乱的第三方库(创建一个自定义类 扩展原始一个:

class My_Google_Service_Calender_Event extends Google_Service_Calendar_Event {
}

最新更新