__toString
Метод __toString дозволяє класу вирішувати самостійно, як він повинен реагувати при перетворенні в рядок.
Приклад
<? Php
// Декларування простого класу
class TestClass
{
public $foo;
public function __construct ($foo) {
$this-> foo = $foo;
}
public function __toString () {
return $this-> foo;
}
}
$class = new TestClass ('Привіт');
echo $class;
?>
Результат виконання цього прикладу:
Привіт
Раніше, до PHP 5.2.0, метод __toString викликався тільки безпосередньо в поєднанні з функціями echo () або print (). Починаючи з PHP 5.2.0, він викликається в будь-якому рядковому контексті (наприклад, у printf () з модифікатором %s), але не в контекстах інших типів (наприклад, з %d модифікатором). Починаючи з PHP 5.2.0, перетворення об'єкта в рядок за відсутності методу __toString викликає помилку E_RECOVERABLE_ERROR.