테스트 사이트 - 개발 중인 베타 버전입니다

EUC-KR (PHP4, Mysql 4.x) 버전을 PHP5.6으로 이전 할 수있는 방법이 있을까요? 채택완료

허걱김선생 5년 전 조회 3,423

안녕하세요.

 

EUC-KR (PHP4, Mysql 4.x) 버전을 PHP5.6으로 이전 할 수있는 방법이 있을까요?

 

PHP4를 바로 5.6으로 올리니

에러가 나서요.

 

조언 좀 부탁드립니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
B
5년 전

- https://www.php.net/manual/en/appendices.php

- http://docs.php.net/manual/kr/appendices.php

"Migrating from PHP 4 to PHP 5.0.x"부터 보면 됩니다.

 

 

짧은 PHP 시작 태그

 

 

PHP v5.4 이상부터, $HTTP_*_VARS 변수가 제거되었습니다.

$HTTP_GET_VARS → $_GET / $HTTP_POST_VARS → $_POST 처럼

Superglobals로 변경해줘야 합니다. $_GET, $_POST, $_COOKIE, $_SESSION, $_FILES 등.

$PHP_SELF, $REMOTE_ADDR 등 구 버전에서 사용하던 변수도

$_SERVER['PHP_SELF'], $_SERVER['REMOTE_ADDR'] 처럼 Superglobals로 변경.

- https://www.php.net/manual/en/reserved.variables.php">https://www.php.net/manual/en/reserved.variables.php

 

 

Notice 오류가 많이 뜬다면 php.ini - error_reporting 설정하거나

(PHP_INI_ALL 모드라 꼭 php.ini 에서 수정할 필요는 없습니다.)

또는 PHP 소스 상단(공통으로 호출되는 파일 상단에 한 줄 추가하면 편함)에

error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED) 코드 한 줄 추가로

오류를 줄일 수 있습니다.

- https://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting">https://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting

예) $data['lang'] = 'PHP'; echo $data[lang]; → echo $data['lang']; echo "...{$data['lang']}..."; 등 다양

// Notice:  Use of undefined constant lang - assumed 'lang' in SOURCE on line LINE

 

 

PHP v5.6이니까 MySQL(Original) 함수 사용 가능한 환경인데,

아니면

mysql이 뜨거나 O가 뜨면 DB 부분은 거의 그대로 사용 가능하고,

mysql 항목이 없거나 X가 뜨면 모듈 설치(또는 요청)하거나, MySQLi다 PDO 함수로 바꾸거나

전체적으로 변경하기 곤란하다 싶으면 김정균 님의 래퍼 함수 사용으로 넘어갈 수 있습니다.

- https://phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=80533

* 문자셋 깨지지 않도록 DB 이전 주의.

 

 

PHP v5.6이니까 php.ini - register_globals 설정도 제거되어서,

구 버전에서처럼 곧바로 변수를 사용할 수 없습니다.

... → $id 사용 불가. $_POST['id'] 또는 $_GET['id'] 또는 $_REQUEST['id']

수정할 파일이 많다면, 소스 상단(공통으로 호출되는 파일 상단이면 편함)에

아래처럼 extract() 함수 추가해서 기존처럼 사용할 수 있습니다. (보안을 생각해 교체 추천)

extract($_GET); extract($_POST); ... 쿠키, 세션, 파일 등 마찬가지

 

 

일단 이 정도만 보면 될 것 같군요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

허걱김선생
5년 전
감사합니다.
의뢰로 해결하였습니다 ^^;;

댓글을 작성하려면 로그인이 필요합니다.

플라이
5년 전

해당 버전을 이전하려면 php 버전에 맞춰 기능수정을 봐야 하는 부분이라 에러가 나는 부분은 잡아야 합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

허걱김선생
5년 전
감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인