PHP PHP 5.2 / 5.3 / 5.4 / 5.5 / 7.x 사용시 오류/경고
페이지 정보
본문
PHP 5.4 이상 설치된 서버로 PHP 5.3이전 에서 개발한 소스를 올리고 에러를 접할때 대처 방법입니다.
과거 오류이지만 너그럽게 묶인하고 에러 표시 하지 않은 것을 엄격하게 금지합니다.
this will throw an Error in a future version of PHP
과거 PHP 버전에서는 묶인했던 내용을, 더이상 안봐준다는 이야기로 생각하면 편합니다.
1. Warning: Use of undefined constant __INCLUDE_CONFIG_PHP - assumed '__INCLUDE_CONFIG_PHP' (this will throw an Error in a future version of PHP) in /home/happyjung/www/demo1.php on line 2
PHP 5.5 이후에는 정의되지 않은 상수를 사용하지 않아야합니다.
존재하지 않는 전역 상수 인 따옴표없는 문자열은 그 자체의 문자열로 간주됩니다.
수정전:
define(__INCLUDE_CONFIG_PHP,"TRUE");
수정후:
define('__INCLUDE_CONFIG_PHP',"TRUE");
2. Warning: Use of undefined constant style_str - assumed 'att_ox' (this will throw an Error in a future version of PHP) in /home/happyjung/www/demo2.php on line 225
[column_name] 으로 된부분을 ['column_name'] 으로 변경
수정전
}elseif($att_row[style_str]=="X") {
수정후
}elseif($att_row['style_str']=="X") {
3. Notice: Undefined index
Notice: Undefined index: order_tel in /home/happyjung/www/memo3.php on line 20
예전엔 $_POST, $_GET, $_REQUEST 등으로 입력받은 데이터를 즉시 사용할 수 있었는데, 보안상 문제가 많아서 사용이 불가능해졌습니다.
앞에서 넘어오지 않은 $_POST . $_GET 등은 선언된 경우 발생하는 오류입니다.
4. Notice: Undefined variable
Notice: Undefined variable: style_str in /home/happyjung/www/memo4.php on line 53
선언되지 않은 변수를 사용했다고 경고가 나오는 라인으로 찾아가서 사용하기 전에 변수를 초기화 합니다.
if($style_str) 라고 사용된경우
기존에는 $style_str가 null 이거나 공백이거나 0 이거나 하면 거짓으로 인식되었으나 향후 불가합니다.
변수가 존재하는지 체크하는 함수인 isset(변수)를 사용해서
(1) if (isset($style_str) && $style_str); 또는
(2) $style_str= isset($style_str)?$style_str:""; 또는
(3) $style_str='';
중에서 위에서부터 하나씩 적용해서 문제가 해결되는 것으로 사용합니다.
수정전:
if($area) $style_str=" where area='{$area}' ";
수정후:
$style_str= isset($style_str)?$style_str:"";
if($area) $style_str=" where area='{$area}' ";
5. Notice: A non well formed numeric value encountered in /home/happyjung/www/demo5.php on line 157
숫자가 아닌 문자열 값이 넘어와서 발생하는 오류
6. Notice: Undefined offset: 47 in /home/happyjung/www/demo6.php on line 182
Undefined offset 은 어떤 배열에서 정의되어 있지 않은 값을 호출하려 할 때 발생하는 에러
참고자료
https://stackoverflow.com/questions/48236765/undefined-constant-error-in-php-7-2
https://secure.php.net/manual/en/migration72.deprecated.php
https://sir.kr/g5_tip/9686
http://lightblog.tistory.com/191
과거 오류이지만 너그럽게 묶인하고 에러 표시 하지 않은 것을 엄격하게 금지합니다.
this will throw an Error in a future version of PHP
과거 PHP 버전에서는 묶인했던 내용을, 더이상 안봐준다는 이야기로 생각하면 편합니다.
1. Warning: Use of undefined constant __INCLUDE_CONFIG_PHP - assumed '__INCLUDE_CONFIG_PHP' (this will throw an Error in a future version of PHP) in /home/happyjung/www/demo1.php on line 2
PHP 5.5 이후에는 정의되지 않은 상수를 사용하지 않아야합니다.
존재하지 않는 전역 상수 인 따옴표없는 문자열은 그 자체의 문자열로 간주됩니다.
수정전:
define(__INCLUDE_CONFIG_PHP,"TRUE");
수정후:
define('__INCLUDE_CONFIG_PHP',"TRUE");
2. Warning: Use of undefined constant style_str - assumed 'att_ox' (this will throw an Error in a future version of PHP) in /home/happyjung/www/demo2.php on line 225
[column_name] 으로 된부분을 ['column_name'] 으로 변경
수정전
}elseif($att_row[style_str]=="X") {
수정후
}elseif($att_row['style_str']=="X") {
3. Notice: Undefined index
Notice: Undefined index: order_tel in /home/happyjung/www/memo3.php on line 20
예전엔 $_POST, $_GET, $_REQUEST 등으로 입력받은 데이터를 즉시 사용할 수 있었는데, 보안상 문제가 많아서 사용이 불가능해졌습니다.
앞에서 넘어오지 않은 $_POST . $_GET 등은 선언된 경우 발생하는 오류입니다.
4. Notice: Undefined variable
Notice: Undefined variable: style_str in /home/happyjung/www/memo4.php on line 53
선언되지 않은 변수를 사용했다고 경고가 나오는 라인으로 찾아가서 사용하기 전에 변수를 초기화 합니다.
if($style_str) 라고 사용된경우
기존에는 $style_str가 null 이거나 공백이거나 0 이거나 하면 거짓으로 인식되었으나 향후 불가합니다.
변수가 존재하는지 체크하는 함수인 isset(변수)를 사용해서
(1) if (isset($style_str) && $style_str); 또는
(2) $style_str= isset($style_str)?$style_str:""; 또는
(3) $style_str='';
중에서 위에서부터 하나씩 적용해서 문제가 해결되는 것으로 사용합니다.
수정전:
if($area) $style_str=" where area='{$area}' ";
수정후:
$style_str= isset($style_str)?$style_str:"";
if($area) $style_str=" where area='{$area}' ";
5. Notice: A non well formed numeric value encountered in /home/happyjung/www/demo5.php on line 157
숫자가 아닌 문자열 값이 넘어와서 발생하는 오류
6. Notice: Undefined offset: 47 in /home/happyjung/www/demo6.php on line 182
Undefined offset 은 어떤 배열에서 정의되어 있지 않은 값을 호출하려 할 때 발생하는 에러
참고자료
https://stackoverflow.com/questions/48236765/undefined-constant-error-in-php-7-2
https://secure.php.net/manual/en/migration72.deprecated.php
https://sir.kr/g5_tip/9686
http://lightblog.tistory.com/191
댓글목록
등록된 댓글이 없습니다.