@deyen

Передаче переменную в функцию по ссылке. Можно или нельзя?

В официальной документации к PHP на этой странице
сказано, что передавать переменные по ссылке , начиная с версии 5.4.0 нельзя и использование
этого приёма вызовет фатальную ошибку. Однако код ниже отлично работает на PHP 7.2
<?php
function u(&$a) {
    $a = $a * 2;
}

$b = 10;
u($b);
echo $b; // выведет 20


Так можно ли этот приём использовать или все же нельзя? И есть ли при использовании этого какие-либо незадокументированные нюансы?
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
@neol
Там речь о том, что в вызове функции нельзя использовать ссылку на переменную. Т. е. ваш примере корректен, а вот такой код не будет работать:

<?php
function u(&$a) {
    $a = $a * 2;
}

$b = 10;
u(&$b); // тут ошибка
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы