Для определенного класса с экземпляром foo существует ли способ PHP echo foo; в индивидуальном порядке?
class TheClass { public $Name; public $Number; function MrFunction() { /* bla bla bla */ } } $foo = new TheClass(); echo $foo;
Насколько я понимаю, вы не можете перегружать echo и я понимаю, что я мог бы легко $foo->MrFunction() . Однако мне интересно, есть ли способ кода, в котором
echo $foo выдает $foo->Name и $foo->Number .
Мы используем PHP версии 5.2.6, но обновление не является проблемой.
class TheClass { public $Name; public $Number; function MrFunction() { /* bla bla bla */ } public function __toString() { return $this->Name . ' '. $this->Number; } } echo $theClassInstance;
Да, используя магический метод __toString
Вам нужен магический метод __toString() . Пример в документах должен показать, что вам нужно.
http://www.php.net/manual/en/language.oop5.magic.php#language.oop5.magic.tostring :
Я думаю, что вы ищете print_r ($ foo) или var_dump ($ foo).