[php] 변수 참조 만 참조로 반환해야합니다-Codeigniter

서버 PHP 업그레이드 후 Apache 2.0의 PHP 버전 5.6.2에서 다음 오류가 발생합니다.

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에서 수정되었습니다 … 일반적으로 핵심 파일을 수정하는 가장 좋은 방법은 아닙니다. 항상 업데이트를 확인하고 2015 년 1 월 2.2.1이 나왔습니다.


답변

codeigniter의 core.common 파일을 재정의하는 것이 더 좋지 않습니다. 그것은 더 테스트되고 시스템 파일이기 때문에 ….

이 문제에 대한 해결책을 제시합니다. ckeditor_helper.php 파일 줄에서
-65

if($k !== end (array_keys($data['config']))) {
       $return .= ",";
}

이것을 다음으로 변경하십시오.

 $segment = array_keys($data['config']);
    if($k !== end($segment)) {
           $return .= ",";
    }

이것이 최선의 해결책이라고 생각하면 문제 통지가 사라집니다.


답변