在对象内部调用对象方法的语法

发布于 2024-12-15 03:33:49 字数 786 浏览 0 评论 0原文

可能是一个愚蠢的问题,但我的 IDE (PHPStorm) 和我有一点分歧......

class Item_Backpack {
    public function Empty() {
        // dump contents
    }

    public function insertThing($thing) {
        // insert thing into backpack
    }
}

class Student {
    private $_Backpack; // is a class, can contain other objects

    function __construct() {
        $this->_Backpack = new Item_Backpack;
    }

    public function emptyBackpack() {
        $this->_Backpack->Empty(); // IDE says method undefined
                                   // and cannot give method/property hints
                                   // for this object :-3
    }
}

Item_Backpack 类具有方法 public function Empty() ,其中 . .. 清空背包!

我的语法正确吗?

Probably a stupid question, but my IDE (PHPStorm) and I are having a bit of a disagreement...

class Item_Backpack {
    public function Empty() {
        // dump contents
    }

    public function insertThing($thing) {
        // insert thing into backpack
    }
}

class Student {
    private $_Backpack; // is a class, can contain other objects

    function __construct() {
        $this->_Backpack = new Item_Backpack;
    }

    public function emptyBackpack() {
        $this->_Backpack->Empty(); // IDE says method undefined
                                   // and cannot give method/property hints
                                   // for this object :-3
    }
}

The Item_Backpack class has the method public function Empty() which ... empties the backpack!

Is my syntax correct here?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

壹場煙雨 2024-12-22 03:33:50

它有问题,因为 empty() 是 PHP 中的保留函数名称 - 您只需将该函数重命名为其他名称,即。空内容()

It's having problems because empty() is a reserved function name in PHP - you just need to rename the function to something else, ie. emptyContents()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文