PHP訪問結束如何繼續處理
來源:懂視網
責編:小采
時間:2020-11-27 14:19:49
PHP訪問結束如何繼續處理
PHP訪問結束如何繼續處理:今天看到dewen里面有人問,如何用php實現瀏覽器訪問結束后繼續執行后續代碼,我寫了個demo,在php-fpm環境下非常容易實現,fastcgi_finish_request即可。如果是其它容器,我想只能通過輸出javascript到客戶端實現跳轉,然后后臺繼續執行。demo如下,ph
導讀PHP訪問結束如何繼續處理:今天看到dewen里面有人問,如何用php實現瀏覽器訪問結束后繼續執行后續代碼,我寫了個demo,在php-fpm環境下非常容易實現,fastcgi_finish_request即可。如果是其它容器,我想只能通過輸出javascript到客戶端實現跳轉,然后后臺繼續執行。demo如下,ph
今天看到dewen里面有人問,如何用php實現瀏覽器訪問結束后繼續執行后續代碼,我寫了個demo,在php-fpm環境下非常容易實現,fastcgi_finish_request即可。如果是其它容器,我想只能通過輸出javascript到客戶端實現跳轉,然后后臺繼續執行。

demo如下,php-fpm測試可用,apache php-cgi由于沒有環境沒有測試。 (推薦學習:PHP視頻教程)
<?php
// 你要跳轉的url
$url = "http://www.baidu.com/";
// 如果使用的是php-fpm
if(function_exists('fastcgi_finish_request')){
header("Location: $url");
ob_flush();
flush();
fastcgi_finish_request();
// Apache ?
}else{
header( 'Content-type: text/html; charset=utf-8' );
if(function_exists('apache_setenv'))apache_setenv('no-gzip', '1');
ini_set('zlib.output_compression', 0);
ini_set('implicit_flush', 1);
echo "<script>location='$url'</script>";
ob_flush();
flush();
}
// 這里是模擬你的耗時邏輯
sleep(2);
file_put_contents('/tmp/test.log', 'ok');
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
PHP訪問結束如何繼續處理
PHP訪問結束如何繼續處理:今天看到dewen里面有人問,如何用php實現瀏覽器訪問結束后繼續執行后續代碼,我寫了個demo,在php-fpm環境下非常容易實現,fastcgi_finish_request即可。如果是其它容器,我想只能通過輸出javascript到客戶端實現跳轉,然后后臺繼續執行。demo如下,ph