Это может быть глупым вопросом для некоторых, но мне было любопытно, как PHP реагирует на что-то вроде:
$blog_title = &$author->get_blog()->get_title();
Я помогаю кому-то с некоторыми обновлениями в PHP php framework. В некоторых местах происходит некоторая серьезная цепочка методов. Я хотел бы сделать код более удобочитаемым без ненужных копий переменных. Я не могу переделать код, поэтому мне нужно работать с тем, что у меня есть.
Я знаю, что это, вероятно, не очень хорошая практика, но каковы потенциальные недостатки?
Было бы разумно только тогда, когда функция фактически вернет ссылку (мое образованное предположение, вероятно, это не так), что означало бы, что вы либо надеетесь, что возвращение останется статичным для полного скрипта, либо вы нарушаете вещи. Вы можете определить свою собственную короткую функцию или обратный вызов, который сделает цепочку для вас следующей лучшей.
Во что бы то ни стало, сохраняйте возврат функции в переменной, если ее нужно оценивать только один раз, но не ожидайте какой-либо магии от ссылки, когда возврат функции не является одним.
Если функция возвращает ссылку, код, вероятно, использует ссылки, где они не имеют смысла, и вы должны исправить это как можно скорее: P.