질문 Q #10019
PC에 XAMPP 설치 후 rt_path 에러 문제
바보돌쇠 2012-09-07 10:50:26
테스트 서버쪽에서 작업을 하다가 로컬PC에서 테스트 해보기 위해서
XAMPP 설치 후 마나님의 공개보드를 설치하였습니다.

기본셋팅은 다 하고, 메인 페이지를 보기 위해서

http://localhost 로 접근을 하니 "rt_path 변수가 선언되지 않았습니다" 팝업이 뜨면서

--------------------------------------------------------------------------------------------------------

A PHP Error was encountered

Severity: 8192

Message: Assigning the return value of new by reference is deprecated

Filename: libraries/Widget.php

Line Number: 21
----------------------------------------------------------------------

에러가 발생합니다.

어디가 잘못 된건지... ㅡㅡ;
 

답변 4
#1 변종원(웅파) 2012-09-07 13:40:16
deprecated <-폐지예정.. php버전업될때 이전 버전에서 사용되던 함수가 폐기되는 경우가 있습니다.


libraries/Widget.php 21번째 라인에 php 함수 사용된게 있는지 보세요.

php 버전도 체크해보시고 php.net change log에서 21번 라인에서 사용된 함수에 대한 것도 찾아보시구요
#2 바보돌쇠 2012-09-12 11:20:26
    function run($name, $data=array()) {
        $args = func_get_args();
 
        require_once APPPATH.'controllers/'.$name.EXT;
 
if (strpos($name, '/')) {
$temp = explode('/', $name);
$name = ucfirst($temp[1]);
} else
       $name = ucfirst($name);
 
        $widget =& new $name();
        return call_user_func_array(array(&$widget, 'index'), array_slice($args, 1));
    }

마냐님의 공개보드를 사용하고 있습니다.
Widget 은 수정한게 없고요...버전은 v1.3을 사용했고, PHP 버전은 5.4.4 입니다.
 
#3 율마 2014-09-11 16:11:07
저도 같은 문제로 골치를 앓고 있습니다.
검색에서 찾은 방법 하나 링크 올려드립니다.
http://www.passkorea.net/Board/ViewDoc.aspx?brdNo=11&docNo=40927

참고로... 버전 5.4.x부터는 안된다네요..ㅠ_ㅠ
(제 php 버전은 5.5.3... ㅠㅠ)
#4 한대승(불의회상) 2014-09-11 17:14:20
흠... 
아래처럼 수정 하시면 될듯 싶네요.
        $widget = new $name();
        return call_user_func_array(array($widget, 'index'), array_slice($args, 1));