2
Я знаю, что &
используется для ссылок, и я видел раньше, как:Какова цель & перед именем функции?
$foo = &$bar;
или
function foo(&$bar) {...}
или
foreach($array as &$value) {...}
И я знаю, что &
означает в вышеуказанных ситуациях ,
Но я видел эту функцию в CodeIgniter:
function &get_instance() {
return CI_Controller::get_instance();
}
Я никогда не видел &
перед именем функции прежде. Что делает &
сделать в вышеуказанной функции?
Спасибо за ответ. Я чувствую, что это хорошая идея не использовать его вообще, потому что он может вводить сложные проблемы для отладки (возможно, это также причина, почему никто не видит, что это используется довольно часто). Спасибо – Dev01
@ Dev01 Добро пожаловать. – Rizier123
@ Dev01: просто указывая на важное использование оператора '&' в CI: 'get_instance'. Выполнение, скажем, '$ CI = get_instance();' вернет новый экземпляр MY_Controller (плохая идея!), В то время как '$ CI = & get_instance();' вернет текущий экземпляр. – SolarBear