如果数组键受保护怎么办?

时间:2013-06-13 08:09:20

标签: php arrays protected

我有这种类型的阵列: - 我想获得数组元素。

context_course Object
 (
                     [_id:protected] => 15
                     [_contextlevel:protected] => 50
                     [_instanceid:protected] => 2 
                     [_path:protected] => /1/3/15 [_depth:protected] => 3 
)

问题是[_id:protected]
我希望有价值15
如果元素是protected,我该怎么办? 感谢。

2 个答案:

答案 0 :(得分:5)

如果某个属性受到保护,则表示该类的开发人员不希望您能够从公共上下文中自由地直接访问或修改其值。

如果您分析此对象的类定义,您很可能会找到一个方法来访问该值,例如它可能是:

$obj->getId();

更多信息:Property Visibility

答案 1 :(得分:2)

这不是数组,而是一个对象。

您需要实现一个公共accessor,也称为getter来访问对象属性。

class context_course 
{
  public function getId()
  {
    return $this->_id;
  }
}