【问题标题】:What do we call this?我们怎么称呼它?
【发布时间】:2010-05-27 08:03:50
【问题描述】:

我想知道我们如何称呼这种作业。

<?php
class SimpleClass
{
    public $var1;
    public $var2;
    public $var3;

    public function SimpleClass()
    {
        $this->var1 = 'one';
        $this->var2 = 'two';
        $this->var3 = 'three';
    }
}

function test()
{
    $objSc = new SimpleClass();
    $objSc->var4 = 'WTF?!'; # <-- what do we call this?
    var_dump($objSc);
}

test();
?>

更好的参考或链接。提前致谢!

编辑:我正在为它寻找一个技术术语......好吧,如果我们有的话。

【问题讨论】:

    标签: php naming


    【解决方案1】:

    我认为这是超载。

    PHP 中的重载提供了动态“创建”属性和方法的方法。这些动态实体是通过可以在一个类中为各种动作类型建立的魔术方法进行处理的。

    在与尚未声明或在当前范围内不可见的属性或方法交互时调用重载方法。

    PHP 手册参考here.

    【讨论】:

    • 设置$objSc 对象的var4 属性的调用通过__set() 魔术方法进行,您也可以设置自己做其他事情。
    【解决方案2】:

    分配 字符串 WTF?!SimpleClass 的公共范围变量。如果你var_dump它,它会正确显示输出为:

    string(5) "WTF?!"
    

    正如@marcdev 指出的那样,它被称为重载

    【讨论】:

      【解决方案3】:

      您正在设置$objSc 对象的独立属性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-02-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-22
        • 1970-01-01
        • 2010-09-27
        相关资源
        最近更新 更多