Как пофиксить «Only variables should be passed by reference»?

Как исправить положение? Заранее благодарен!) (До переноса сайта с виртуального хостинга PHP5.6 на VestaCP всё работало, вот незадача...

Notice: Only variables should be passed by reference in /home/admin/web/shopspeed.ru/public_html/engine/include/constants.php on line 10


Файл constants.php

<?php


define('URL_HOME', 'http://'.$_SERVER['HTTP_HOST'].str_replace('index.php', '', $_SERVER['PHP_SELF']));
define('URL_THIS', 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
define('URL_APP', array_shift(explode('?',substr($_SERVER['REQUEST_URI'], strlen(str_replace('index.php', '', $_SERVER['PHP_SELF']))))));
define('URL_REFERER', @$_SERVER['HTTP_REFERER']);
  • Вопрос задан
  • 4570 просмотров
Решения вопроса 1
glaphire
@glaphire Куратор тега PHP
PHP developer
Проблема в строчке 10, но вы привели больше :)
Видимо там настройки такие, чтобы явно выводились нотисы.
Исправьте:
define('URL_APP', array_shift(explode('?',substr($_SERVER['REQUEST_URI'], strlen(str_replace('index.php', '', $_SERVER['PHP_SELF']))))));

на
$php_self = $_SERVER['PHP_SELF'];
$request_uri = $_SERVER['REQUEST_URI'];
define('URL_APP', array_shift(explode('?',substr($request_uri, strlen(str_replace('index.php', '', $php_self))))));

Источники предположений:
https://stackoverflow.com/questions/5842366/php-va...
https://stackoverflow.com/a/30392112/5371978
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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