0

如何创建具有变量的对象/类。然后,该变量还需要具有可调用函数。

$a->name //return foo
$a->name->getAlias() //return foobar

以上是一个示例,而不是所需的功能。

谢谢你。

4

1 回答 1

6

如果您的对象被称为字符串, _toString 可以自动更改您的对象。name需要成为对象的实例才能以不同的方式使用它:

class A
{
    function __construct() 
    {
        $this->name = new B();
    }
}

class B
{
    function __toString()
    {
        return 'Jamie';
    }

    function getAlias()
    {
        return 'JJAMMIIEE';
    }
}

$a = new A();
print $a->name; //returns Jamie
var_dump($a->name); //returns Object B, __toString function will not be called
print $a->name->getAlias(); //returns JJAMMIIEE

文档在这里

于 2013-07-14T20:15:58.910 回答