Эквивалент перегрузки оператора в C ++ для PHP, переменная класса echo / print для вывода по умолчанию - PullRequest
2 голосов
/ 01 октября 2011

Я не знаю, как на самом деле спросить об этом, потому что я довольно новичок в программировании по сравнению со многими из вас.То, что я ищу, является печатью по умолчанию или отражением класса.Я дам вам эквивалент C ++.

ClassName varClass(param);

cout << "Default print: " << varClass << endl;

Как вы можете видеть в этом кратком примере, вместо того, чтобы вызывать varClass.customPrintFunction(), мне пришлось использовать только имя переменной.* Что мне нужно, это эквивалент PHP.Что в php позволило бы мне сделать это:

$address = new Address(param);

echo "Default print: " . $address . "<br />";

Вместо: echo "Default print: " . $address->customPrintFunction() . "<br />";

Надеюсь, я был достаточно ясен.Если нет аналога, если бы вы могли дать мне то, что было бы моим лучшим вариантом вместо этого.Спасибо заранее.

1 Ответ

3 голосов
/ 01 октября 2011

Вы можете определить метод __toString, который определяет поведение объекта в случае его приведения к строке.

public function __toString() { return $this->customPrintFunction(); }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...