-1

我正在写这两个课程来锻炼:

abstract class SocialNetworks
{
    abstract protected function getFacebookGraph();

} // class SocialNetworks

class GetSocialNetworks extends SocialNetworks
{
    protected $fbData;
    public function setFacebookData($facebookData) {
        $this->fbData = $facebookData;
        $this->getFacebookGraph($this->fbData);
    }
    protected function getFacebookGraph() {
        print_r($this->fbData);
    }
}

$facebookData是一个数组)。

在这种模式下,此类正确打印我传递的数组。

但我不能以任何模式“直接”访问,$fbData但只能使用$this->fbData. 否则我得到

Undefined variable: fbData

正常还是有方法可以直接使用$fbData

我再说一遍……这些是我在 OOP 中的第一次练习,所以我需要学习更多。

4

2 回答 2

1

根据范围:

$this->variable用于对象内部

self::$variable用于静态类内部

parent::$variable用于在子对象内部访问父类

$variable在本地范围内使用

班级成员不是本地人,他们是相对的超级成员。

于 2013-10-22T11:51:15.050 回答
0

在其他语言中,您可以在没有“this”的情况下访问班级成员。php 的情况并非如此。在这里你总是必须使用“$this”。

于 2013-10-22T11:48:36.427 回答