После обновления PHP сервера я получаю следующую ошибку с PHP версии 5.6.2 на Apache 2.0
A PHP Error was encountered Severity: Notice Message: Only variable references should be returned by reference Filename: core/Common.php Line Number: 257
Как я могу это исправить?
Изменить имя файла: core / Common.php, номер строки: 257
До
return $_config[0] =& $config;
После
$_config[0] =& $config; return $_config[0];
Добавил (а) NikiC
В выражениях PHP всегда возвращают назначенное значение. Поэтому $ _config [0] = & $ config возвращает $ config – но не сама переменная, а копия ее значения. И возврат ссылки на временное значение не будет особенно полезен (изменение этого ничего не сделает).
Это исправление было объединено в CI 2.2.1 ( https://github.com/bcit-ci/CodeIgniter/commit/69b02d0f0bc46e914bed1604cfbd9bf74286b2e3 ). Лучше обновлять, а не изменять файлы основных фреймов.
это было изменено в codeigniter 2.2.1 … обычно не самая лучшая практика для изменения основных файлов, я всегда буду проверять наличие обновлений и 2.2.1 вышел в январе 2015 года
Изменить номер строки ядра / Common.php: код 257 с
$_config[0] =& $config; return $_config[0];
Не лучше переопределять основной файл codeigniter. Потому что это более проверенные и системные файлы ….
Я делаю решение этой проблемы. В строке ckeditor_helper.php- 65
if($k !== end (array_keys($data['config']))) { $return .= ","; }
Измените это на ->
$segment = array_keys($data['config']); if($k !== end($segment)) { $return .= ","; }
Я думаю, что это лучшее решение, и тогда ваше сообщение о проблеме исчезнет.