| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Передача переменной по ссылке |
| Автор: Rerecoder 14.3.2020, 13:21 | ||
| На сервере у клиента PHP Version 5.4.45 Там живет древний скрипт, который нужно переделать, чтоб он работал на php7 Наткнулся там на такую конструкцию:
Погуглив нашел что это передача переменной по ссылке, чтоб внутри ее можно было изменять и изменения эти сохранились в переменной снаружи функции. https://www.php.net/manual/ru/language.references.pass.php В этом мануале пишут что: Начиная с PHP 5.4.0 передача переменной по ссылке стала невозможна, поэтому использование этого приема приведет к фатальной ошибке. Но скрипт этот работает на 5.4.45 Проясните плиз этот момент, кто к теме. Клиент говорит, что этот же скрипт вроде работать может и на 5.6 Может ли код с передачей параметров по ссылке работать на 5.6 теоретически? Или если где то работает на 5.6 то значит там точно более новая версия скрипта? |
| Автор: ksnk 15.3.2020, 20:41 |
| Не верю http://phpfiddle.org/main/code/gtw3-i2s7 ? Переменная по ссылке уходит нормально, версия сейчас 7.1.15 |
| Автор: Rerecoder 21.3.2020, 14:28 |
| Действительно, работает значит в мануале ошибка. Еще в том же проекте мне встретилась конструкция внутри функций global $_APPDATA; Почитал описание, получается это почти то же самое, что доступ по ссылке. Думал давным давно глобальные переменные запрещены в php, был очень удивлен. |