2013-07-18 6 views
1

수정할 수없는 다음 코드 부분이 있습니다.php "exit"명령을 "건너 뛰는"방법은 무엇입니까?

if (empty($post->comment_status)) { 
      do_action('comment_id_not_found', $comment_post_ID); 
      exit; 
    } 

do_action 처리 중에 호출되는 함수를 만들 수 있습니다 (Wordpress의 후크).

function my_function() { 
    //do something 
} 
add_action('comment_id_not_found', 'my_function'); 

이 상태에서 exit; 명령을 생략 할 수 있습니까?

감사

+0

아니요, do_action이 실행되는 즉시 분명히 실행될 것입니다. 왜 코드를 변경할 수 없습니까? –

+0

당신은'exit()'을 오버라이드 할 수 없으니, 왜 comment_status를 강제로 비워 두지 않겠습니까? –

+0

아니면이 코드가'catch' 블록에서 실행되는 동안 몇 가지 예외를 던질 수 있습니다 ... – Cthulhu

답변

0

exit는 극복 할 수있는 방법 및 수정할 수있는 방법은 없습니다, 성명이다. 이를 방지하는 유일한 방법은 코드가 코드를 통과시키지 않는지 확인하는 것입니다. (. 예를 들어 if(FALSE) exit; 종료되지 않지만이에 :. do_something(); exit; do_something_else(); 기능 do_something_else()가 호출되지 않습니다)

2

한 가지 가능한 솔루션이 추한이라고 모든 코드를하면서 당신은 수정할 수 없습니다 함수에서 예외를 발생하는 것 try 블록에서 실행하십시오. 즉, 수있는 경우try-catch에 넣어.

관련 문제