본문 바로가기
Linux/APM

PHP Warning:(this will throw an Error in a future version of PHP)

by aegypius 2020. 11. 26.
728x90
반응형

  대략 아래와 같은 error log들이 문제다.

PHP Warning:  Use of undefined constant wr_3 - assumed 'wr_3' (this will throw an Error in a future version of PHP)

PHP Warning:  Use of undefined constant wr_subject - assumed 'wr_subject' (this will throw an Error in a future version of PHP)

PHP Warning:  Use of undefined constant file - assumed 'file' (this will throw an Error in a future version of PHP)

PHP Warning:  Use of undefined constant wr_3 - assumed 'wr_3' (this will throw an Error in a future version of PHP)

A non-numeric value encountered in

  php의 버전을 5.6에서 7.0으로 올린 후에 발생했던 에러 로그이다. (7.0-7.2-7.3 모두 발생했던 것으로 기억한다). constant에 인용부호(')를 적용하면 없어질 것도 같은데 손대기가 조금 부담스러웠다. 내가 만든 사이트도 아니었으며, 직접 제작하신 분은 너무 바쁘셔서 테스트도 하지 못하고 그냥 손 놓고 있었다. 그냥 주기적으로 아파치의 오류 로그를 지워준지 몇 달이다...-_-;

 서버환경은 CentOS 7 (7.6.1810)에 php는 7.4.9 이며 그누보드5로 제작한 사이트에서 계속 위의 에러로그가 발생했다. 최근 CentOS 8 을 테스트 하기 위해서 기존의 서버에서 운영중인 웹사이트들을 새로운 서버로 하나씩 이전해 봤는데.... CentOS 8 (8.2.2004) / php 7.4.12 환경에서는 위의 오류가 말끔히 사라졌다. 

  php 버전을 상위로 올렸을 때 문제가 발생하지 않는다면 php 7.4.12를 고려하는 것도 괜찮은 방법일 것이다. 기존의 php 버전이 5.4 미만이라면....적어도 내 수준에서는 답이 없다. 특히나 5.2 이하 버전으로 제작한 사이트는....그냥...악몽이었다.


[2022.01.19]

php 7.4.x에서도 위의 경고메시지는 여전히 발생하고 있다. 그누보드로 제작한 사이트에서만 나오고 있는데 메시지의 내용은 아래와 같다.

[php7:warn] [pid 6885] [client 157.55.39.100:34048] PHP Warning:  Use of undefined constant wr_8 - assumed 'wr_8' (this will throw an Error in a future version of PHP) in ~이하 생략~

wr_8을 'wr_8'로 수정해주면 경고 메시지는 사라진다. 

이제 슬슬 고민을 해봐야겠다. 

1. 사이트 제작자에게 소스 변경을 요청한다.
2. 자동으로 소스를 수정해주는 스크립트를 하나 만든다.
3. 주기적으로 해당 사이트의 로그파일을 지워준다.
4. 주기적으로 해당 사이트의 로그파일을 지워주는 스크립트를 만든다.
5. 그냥 냅둔다.

 


 

728x90
반응형

댓글