Gar*_*orn 17 php class object echo
给定一个具有实例foo的特定类,有没有办法以echo foo;自定义方式使用PHP ?
class TheClass {
public $Name;
public $Number;
function MrFunction() { /* bla bla bla */ }
}
$foo = new TheClass();
echo $foo;
Run Code Online (Sandbox Code Playgroud)
据我所知,你不能超载echo,我意识到我可以很容易地$foo->MrFunction()完成这项工作.但是我想知道是否有一种方法来编码
echo $foo打印出$foo->Name和$foo->Number.
我们使用的是PHP 5.2.6版,但升级不是问题.
pro*_*son 29
class TheClass {
public $Name;
public $Number;
function MrFunction() { /* bla bla bla */ }
public function __toString()
{
return $this->Name . ' '. $this->Number;
}
}
echo $theClassInstance;
Run Code Online (Sandbox Code Playgroud)
你需要的是__toString()神奇的方法.文档中的示例应该显示您需要的内容.
http://www.php.net/manual/en/language.oop5.magic.php#language.oop5.magic.tostring: