声明类变量问题

时间:2011-01-19 14:48:25

标签: php

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

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');
    }
}

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

4 个答案:

答案 0 :(得分:5)

首先使用定义第二次正在初始化。预先定义和更好的做法是良好做法{/ 3}}

阅读set the appropriate visibility了解更多信息 - 您现在学到的知识将为您的未来做好准备。

答案 1 :(得分:0)

这已在这里得到解答,希望它有所帮助 - What does PHP keyword 'var' do?

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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

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