서버 오류

 

TypeError #0 “Argument 2 passed to datasaver_warningAddon::before_display_content() must be an instance of ModuleObject, instance of BaseObject given, called in 애드온 경로/datasaver_warning.addon.php on line 111” 애드온 경로/datasaver_warning.addon.php on line 93

 

 

원래 이러한 메시지가 나타나지 않았는데 갑자기 나타나네요.

 

PHP 버전 때문에 나는 메시지가 맞을까요? PHP 7 사용 중입니다.

  • profile
    1.9.0 이상 그리고 php7.2 라고 한다면 BaseObject를 사용하게 모든 자료를 고쳐야 합니다. 하지만 php7.2가 아닌 아래 버전이시라면 Object를 사용해도 정상동작 되도록 되어 있습니다.
  • profile
    해당 애드온에서 클래스 타입 힌트를 지나치게 엄격하게 지정했거나, 애드온 내에서 특정 변수가 특정 클래스인지 체크하는 부분이 빠졌거나, 다른 애드온이 오작동하여 코어에서 사용하는 일부 변수를 다른 클래스로 덮어쓰고 있는 상황입니다.

    PHP 예전 버전에서는 웬만큼 엉성하게 코딩을 해도 그냥 봐주었지만 최근 버전에서는 오류를 뿜어버립니다. 애드온 개발자께서 타입 힌트까지 사용하실 정도라면 이런 부분은 어느 정도 알고 계실 테니 한번 문의해 보세요.