2016-11-28 1 views
-2

PHP 종료 여부를 어떻게 알 수 있습니까? "shutting down"은 현재 register_shutdown_function으로 등록 된 기능이 실행 중임을 의미합니다. 예를 들어, 다음 코드를 고려하십시오PHP 종료 여부 감지

<?php 

function do_something() { 
    // How can I detect whether PHP is shutting down. 
} 

register_shutdown_function('do_something'); 
do_something(); 

위의 코드에서를, 나는 do_something 함수 내에서 종료를 감지 할 수 있어야합니다.

+3

당신은 "나는 [...] 감지 할"을 무엇을 의미합니까? do_something이 실행되면, PHP가 이미 종료되었음을 의미합니다. – Max

+0

@Max는'register_shutdown_function()'은 스크립트가 완료되거나 종료 된 후에 특정 함수를 호출하는 데 사용됩니다. 스크립트가 완료되면'do_something()'함수가 호출됩니다. – Kitson88

+0

아아, 나는 코드 블록을 채웠다. 내가 고칠 수있게 해줘. –

답변

0

이 작동합니다 :

<?php 

// receive true or false for knowing if register_shutdown_function() called this function 
function do_something($is_register_shutdown_function = false) { 
    // How can I detect whether PHP is shutting down. 
    if($is_register_shutdown_function === true){ 
     file_put_contents('do_something.log', "do_something() - ".time().".".microtime(true)."\n", FILE_APPEND); 
    } 

    // do as you please going forward 
} 

register_shutdown_function('do_something', true); // pass true to the first parameter of do_something() 
do_something();