关于php:声明类变量问题


Declaring class variables question

这些var声明实际上在PHP类中做了什么:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class VbForumsPageMain extends BxDolPageView {
    var $_oMain;
    var $_oTemplate;
    var $_oConfig;
    var $_oDb;

    function VbForumsPageMain(&$oMain) {
        $this->_oMain = &$oMain;
        $this->_oTemplate = $oMain->_oTemplate;
        $this->_oConfig = $oMain->_oConfig;
        $this->_oDb = $oMain->_oDb;
        parent::BxDolPageView('vb_forums_main');
    }
}

它们是否必要,是否为变量添加了额外的用途? 我不确定他们是否在课堂上两次。


第一个用途是定义它们,第二个用于初始化它们。最好先定义它们,然后更好地练习设置适当的可见性。

阅读PHP文档以获取更多信息 - 您现在学到的知识将为您的未来做好准备。


只是为了添加其他答案:在课程开头的这些定义对于IDE中的自动竞争非常重要。如果您没有在开头定义属性,IDE可能会给您"未定义的属性"错误。此外,它还可以让您快速了解类中可用的属性。


是的,在定义类的扩展时需要它们。
VbForumsPageMain类具有与这些变量扩展的BxDolPageView相同的属性(变量)。
下面的函数设置类的值和结构。


这已在这里得到解答,希望它有所帮助 - PHP关键字'var'做什么?

它基本上声明公共属性或类,但您应该使用privatepublicprotected