Я решил сменить хостера. Достал меня Valuehost.ru. А у нового хостера столкнулся с такой странностью(?). При попытке передать в функцию параметр по ссылке PHP пишет
Цитата:
Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in /home/.../public_html/mod/shop/s hop.php on line 50
Если я правильно перевел, передача параметров по ссылке во время выполнения скрипта не рекомендуется, и в будущем планируется вообще от этого отказаться.
Правильно:
PHP:
скопировать код в буфер обмена
<?PHP $html = get_product( $id_page, $id_prd, $title_page ); ............................................................................ function get_product( $id_page, $id_prd, &$title_page ) { ........................................................................ return $html; } ?>
Неправильно:
PHP:
скопировать код в буфер обмена
<?PHP $html = get_product( $id_page, $id_prd, &$title_page ); ............................................................................ function get_product( $id_page, $id_prd, $title_page ) { ........................................................................ return $html; } ?>
Можно запретить выдачу предупреждения, разрешив передачу по ссылке во время выполнения:
allow_call_time_pass_reference On
Хотелось бы услышать комментарии по этому поводу: это принципиальная ошибка (и мне придется исправить какое-то количество скриптов) или можно и так оставить? Я так понимаю, единого мнения по этому вопросу нет. У старого хостера
allow_call_time_pass_reference On
а у нового
allow_call_time_pass_reference Off
|