Где и почему мы используем __toString () в PHP?

Я понимаю, как это работает, но зачем нам это практически использовать?

<?php
    class cat {
        public function __toString() {
            return "This is a cat\n";
        }
    }

    $toby = new cat;
    print $toby;
?>

Разве это не то же самое, что:

<?php
    class cat {
        public function random_method() {
            echo "This is a cat\n";
        }
    }

    $toby = new cat;
    $toby->random_method();
?>

мы не можем просто использовать любой другой общедоступный метод выводить любой текст? Зачем нам нужен такой волшебный метод?

26
задан nbro 14 July 2016 в 11:50
поделиться