Home php教程 php手册 PHP ignore_user_abort与connection_status与register_shutdown_fu

PHP ignore_user_abort与connection_status与register_shutdown_fu

Jun 13, 2016 am 10:42 AM
connection ignore php shutdown user and

PHP ignore_user_abort 与 connection_status 与 register_shutdown_function 使用方法
用ignore_user_abort()实现PHP计划任务
语法: int ignore_user_abort(int [setting]);
返回值: 整数
函数种类: PHP 系统功能
内容说明
0 - NORMAL(正常)1 - ABORTED(异常退出)2 - TIMEOUT(超时)
本函数配置或取得使用端连接中断后,PHP 程序是否仍继续执行。默认值为中断连接后就停止执行。
在 PHP 配置文件中 (php3.ini/php.ini) 的 ignore_user_abort 选项就是配置处。本功能在 PHP 3.0.7 版之后才开始提供。
ignore_user_abort,这个函数可以帮助我们实现像linux中的cron一样实现计划任务,用户关掉浏览器后还可以执行。
首先修改你的php.ini,将“; ignore_user_abort = On”的注释去掉,重启一下Apache或IIS。
运用sleep(300)+死循环, 这样就可以实现计划任务了, 这个程序里不要有输出, 有输出容易中断。
缺点: 要停止程序必得重启服务器,占内存大!!
ignore_user_abort(true);
set_time_limit(0);
while(1){
    $fp = fopen(time_task.txt,"a+");
    $str = date("Y-m-d h:i:s")."n";
    fwrite($fp,$str);
    fclose($fp);
    sleep(1800);    //半小时执行一次
}
?>
PHP代码
    ignore_user_abort(true); // 启用函数
    set_time_limit(0); // 无限次数执行脚本
    $interval=60*2; // 每两分钟执行一次
    do{
    // 执行的内容开始
    file_get_contents("http://www.liujingze.com/"); // 需要执行的过程
    // 执行的内容结束
    sleep($interval); // 按设置的间隔时间执行
    }while(true);
?>
PHP计划任务实例代码

ignore_user_abort();
set_time_limit(0);
$interval_second = 15;
do{
    @$fp = fopen("leapsoulcn.txt","a");
    if(!$fp)
    {
        echo "system error";
        exit();
    }
    else
    {
        $fileData = "domain"." "."www.leapsoul.cn"." ";
        $fileData = $fileData."description"." "."PHP网站开发教程网,面向PHP初学者的PHP教程网。"." ";
        $fileData = $fileData."title"." "."本教程主要讲述使用ignore_user_abort函数实现PHP计划任务功能。";
        fwrite($fp, $fileData);
        fclose($fp);
    }
    sleep($interval_second);
}while(true);
?>

connection_status
取得连接状态。
语法: int connection_status(void);
返回值: 整数
函数种类: 网络系统
内容说明
本函数可返回连接状态。使用时不须输入参数
 
register_shutdown_function
定义 PHP 程序执行完成后执行的函数。
语法: int register_shutdown_function(string func);
返回值: 整数
函数种类: PHP 系统功能
内容说明
本函数向系统定义 PHP 程序 (Script) 执行结束之后所要执行的函数。当执行该指定的函数时,由于无法看到返回值,因此调试较困难。

Statement of this Website
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1677
14
PHP Tutorial
1280
29
C# Tutorial
1257
24
What happens if session_start() is called multiple times? What happens if session_start() is called multiple times? Apr 25, 2025 am 12:06 AM

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

Composer: Aiding PHP Development Through AI Composer: Aiding PHP Development Through AI Apr 29, 2025 am 12:27 AM

AI can help optimize the use of Composer. Specific methods include: 1. Dependency management optimization: AI analyzes dependencies, recommends the best version combination, and reduces conflicts. 2. Automated code generation: AI generates composer.json files that conform to best practices. 3. Improve code quality: AI detects potential problems, provides optimization suggestions, and improves code quality. These methods are implemented through machine learning and natural language processing technologies to help developers improve efficiency and code quality.

What is the significance of the session_start() function? What is the significance of the session_start() function? May 03, 2025 am 12:18 AM

session_start()iscrucialinPHPformanagingusersessions.1)Itinitiatesanewsessionifnoneexists,2)resumesanexistingsession,and3)setsasessioncookieforcontinuityacrossrequests,enablingapplicationslikeuserauthenticationandpersonalizedcontent.

How to use MySQL functions for data processing and calculation How to use MySQL functions for data processing and calculation Apr 29, 2025 pm 04:21 PM

MySQL functions can be used for data processing and calculation. 1. Basic usage includes string processing, date calculation and mathematical operations. 2. Advanced usage involves combining multiple functions to implement complex operations. 3. Performance optimization requires avoiding the use of functions in the WHERE clause and using GROUPBY and temporary tables.

H5: Key Improvements in HTML5 H5: Key Improvements in HTML5 Apr 28, 2025 am 12:26 AM

HTML5 brings five key improvements: 1. Semantic tags improve code clarity and SEO effects; 2. Multimedia support simplifies video and audio embedding; 3. Form enhancement simplifies verification; 4. Offline and local storage improves user experience; 5. Canvas and graphics functions enhance the visualization of web pages.

Composer: The Package Manager for PHP Developers Composer: The Package Manager for PHP Developers May 02, 2025 am 12:23 AM

Composer is a dependency management tool for PHP, and manages project dependencies through composer.json file. 1) parse composer.json to obtain dependency information; 2) parse dependencies to form a dependency tree; 3) download and install dependencies from Packagist to the vendor directory; 4) generate composer.lock file to lock the dependency version to ensure team consistency and project maintainability.

How to configure the character set and collation rules of MySQL How to configure the character set and collation rules of MySQL Apr 29, 2025 pm 04:06 PM

Methods for configuring character sets and collations in MySQL include: 1. Setting the character sets and collations at the server level: SETNAMES'utf8'; SETCHARACTERSETutf8; SETCOLLATION_CONNECTION='utf8_general_ci'; 2. Create a database that uses specific character sets and collations: CREATEDATABASEexample_dbCHARACTERSETutf8COLLATEutf8_general_ci; 3. Specify character sets and collations when creating a table: CREATETABLEexample_table(idINT

How to use type traits in C? How to use type traits in C? Apr 28, 2025 pm 08:18 PM

typetraits are used in C for compile-time type checking and operation, improving code flexibility and type safety. 1) Type judgment is performed through std::is_integral and std::is_floating_point to achieve efficient type checking and output. 2) Use std::is_trivially_copyable to optimize vector copy and select different copy strategies according to the type. 3) Pay attention to compile-time decision-making, type safety, performance optimization and code complexity. Reasonable use of typetraits can greatly improve code quality.

See all articles