Home  >  Article  >  Backend Development  >  php ignore_user_abort() function setting disconnects from the client and the script continues execution_PHP tutorial

php ignore_user_abort() function setting disconnects from the client and the script continues execution_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 09:52:161117browse

php ignore_user_abort() function sets the script to disconnect from the client and continue execution

ignore_user_abort() can still execute PHP code after the client is closed, keeping the PHP process running During execution, the so-called scheduled task function and continuous process can be realized. You only need to open the execution script. Unless the server such as apache is restarted or there is output from the script, the PHP script will always be in the execution state. At first glance, it is very practical, but the cost is a The continuous process of PHP executing scripts is very expensive, but it can achieve many unexpected functions.

Definition and usage

ignore_user_abort() function sets whether disconnecting from the client will terminate the execution of the script.

This function returns the previous value (a Boolean value) set by user-abort.

Grammar

ignore_user_abort(setting)

Parameter Description

setting is optional. If set to true, disconnects from the user are ignored, if set to false, causes the script to stop running. If this parameter is not set, the current settings will be returned.

COMMENT : PHP will not detect if the user has disconnected until trying to send information to the client. Simply using the echo statement does not ensure that the message is sent, see the flush() function.

Usage example:

(1) Combined with the set_time_limit() function to implement a loop script execution task

<?php
ignore_user_abort();
set_time_limit(0);
$interval=60*15;//说明:每隔15分钟循环执行
do{
//执行的业务
}while(true);

(2) Customize the implementation file output and track the execution results of the ignore_user_abort() function

<?php
ignore_user_abort(TRUE);
set_time_limit(0);
$interval=10;
$stop=1;
do{
    if($stop==10) break;
    file_put_contents('phpernote.com.php',' Current Time: '.time().' Stop: '.$stop);
    $stop++;
    sleep($interval);
}while(true);

Open the phpernote.com.php file. The file content is as follows:

Current Time: 1273735029 Stop: 9

The principle is that even if the client terminates the script, it will still be executed every 10 seconds, and the current time and termination point will be printed out, so that the specific effect of the ignore_user_abort() function can be tested.

Through examples, I found that using the ignore_user_abort() function is still very practical when implementing scheduled tasks, continuous processes, etc.

Articles you may be interested in

  • thinkphp page jump (successerror) how to set the jump waiting time
  • php window platform simulates the checkdnsrr function to detect whether the email is authentic There is
  • php method to use filter function to verify email, url and ip address
  • The effect of Jquery waiting for ajax to be executed before continuing to execute the following code
  • The role of php get_headers function and Usage
  • Use PHP function memory_get_usage to obtain the current PHP memory consumption to optimize program performance
  • php uses ZipArchive function to compress and decompress files
  • How does php determine the current Is the operating system linux or windows

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1008339.htmlTechArticlephp ignore_user_abort() function setting is disconnected from the client and the script continues to execute ignore_user_abort(), which can be realized when the client is closed PHP code can still be executed, keeping the PHP process...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn