Когда то очень давно столкнулся с такой проблемой, парсил XML файл, кажется при помощи simple XML, и полученные результат, выводил примерно как то так: Код (PHP): echo $result; Все выводилось, все было хорошо, но когда я пытался работать с этим $result как со строкой, т.е. допустим методом strpos то мне выдавало ошибку, тогда мне подсказал многоуважаемый что это не строка, а объект, но при этом как то выводилось содержимое одного из свойств. Мне надо сейчас сделать что то подобное. Короче мне надо сделать такую штуку, есть класс допустим: Код (PHP): class cls { public $a; } $obj = new cls(); $obj->a = 'hello'; echo $obj; // будет напечатано 'hello' как сделать? возможно ли такое? если нет, то почему simple XML делал такое или я что то путаю? Добавлено спустя 9 минут 20 секунд: порылся, нашел такой метод: __toString
Так вижу: Код (PHP): class cls { public $a; public function __toString() { return $this->a; } } $obj = new cls(); $obj->a = 'hello'; echo $obj; // будет напечатано 'hello'
пошарил, нашел вот такие 2 замечательных метода __invoke и __toString, вообще крутяк. Добавлено спустя 26 секунд: только вот единственно я не помню почему же оно мне тогда ошибку выдавало, ну да ладно