1. 환경
xe_official_planner123
version : 5.11.0
PHP : 8.2
Core : Rhymix2.1.2
다운로드 : http://crypto216.iwinv.net/xe/download?package_srl=179
2. 에러 로그
PHP Exception: Error #0 "Non-static method planner123_main::fn_xetimestamp() cannot be called statically" in modules/board/skins/xe_official_planner123/_get_schedule.html on line 41
설명
이 예외 메시지는 "Non-static method planner123_main::fn_xetimestamp() cannot be called statically"라고 나타납니다. 이는 planner123_main
클래스의 fn_xetimestamp()
메서드가 정적(static)으로 호출될 수 없다는 것을 의미합니다.
현재 코드에서 fn_xetimestamp()
함수는 클래스 메서드가 아닌 일반적인 함수로 선언되어 있습니다. 그러나 예외 메시지에서 이 함수가 정적으로 호출되고 있어서 발생한 오류입니다.
해결 방법은 다음과 같습니다:
class planner123_main {
public static function fn_xetimestamp() {
$localtimestamp = mktime(date("H"), date("i"), date("s")+zgap(), date("m"), date("d"), date("Y"));
return $localtimestamp;
}
}
fn_xetimestamp()
메서드를 호출할 때, 정적 메서드로 호출해야 합니다.
3. 수정방법
경로 : modules/board/skins/xe_official_planner123/function/class.planner123_main.php
public static function fn_xetimestamp() { $localtimestamp = mktime(date("H"), date("i"), date("s")+zgap(), date("m"), date("d"), date("Y")); return $localtimestamp; }
public static 이라고 추가해주시면 됩니다.