Hook 사용시 주의 사항 - Closure 사용 정보
Hook 사용시 주의 사항 - Closure 사용본문
❗ 이 문제는 그누보드 v5.5.8.2 부터 수정되었습니다.
밑에 예제 코드 만들어보다가 발견했는데,
add_event 에 closure 를 사용할 수 없습니다. (버그 게시판에 개선을 요청해놨습니다)
예를들면,
add_event('write_update_after', function($board, $wr_id, $w, $qstr, $redirect_url) {
// do something...
}, G5_HOOK_DEFAULT_PRIORITY, 5);
이런식으로 사용할 수 없고, 아래처럼 함수를 정의한 후 사용하거나 클래스를 사용해야 해서 좀 불편할 수 있습니다.
function on_write_update($board, $wr_id, $w, $qstr, $redirect_url) {
// do something...
}
add_event('write_update_after', 'on_write_update', G5_HOOK_DEFAULT_PRIORITY, 5);
혹시, 이미 뭔가 만드시고 계시다면 참고해주세요
추천
1
1
댓글 3개
5.4 소스를 봐도 위처럼 사용한건 없는거 같습니다.
나중에 플러그인 만들때 참고해야겠네요
나중에 플러그인 만들때 참고해야겠네요
@Rido lib/Hook/hook.extends.class.php 파일의 22 번째 라인에 사용된 function_exitst 함수를 is_callable 함수로만 변경하면되는데..
---
추적 및 삭제가 어려워서 현재 방식으로 유지된다고 합니다.
---
추적 및 삭제가 어려워서 현재 방식으로 유지된다고 합니다.
참고!! 그누보드 V 5.5.8.2 버전부터 closure 함수 사용 가능합니다.