当echo语句中的变量引用对象时运行的Magic方法

问题描述 投票:1回答:1

在PHP中,当引用对象的变量在echo语句中时,会自动运行这种魔术方法吗?

php lamp
1个回答
2
投票

对不起,我很难理解你在问什么。我相信你想要__toString()方法:

__toString()方法允许类决定当它被视为字符串时它将如何反应。例如,echo $obj;将打印什么。此方法必须返回一个字符串,否则会发出致命的E_RECOVERABLE_ERROR级别错误。

这是一个简单的例子:

class A
{
    public function __toString()
    {
        return 'banana';
    }
}

$a = new A();
echo $a;

这将打印出banana

© www.soinside.com 2019 - 2024. All rights reserved.