感謝@robbrit和@Luis Siquot。我一直在尋找register_shutdown_function因爲Luis的評論,我正在讀該網頁上的評論,和我遇到"When using php-fpm, fastcgi_finish_request() should be used instead of register_shutdown_function() and exit()"
這導致我fastcgi_finish_request它說出來:
"This function flushes all response data to the client and finishes the request. This allows for time consuming tasks to be performed without leaving the connection to the client open."
所以看起來像fastcgi_finish_request()
就是我要找的,不是register_shutdown_function()
編輯:看來,fastcgi_finish_request()
需要另一個庫,所以改用:
ob_end_clean();
header("Connection: close");
ignore_user_abort(true); // just to be safe
ob_start();
echo "The client will see this!";
$size = ob_get_length();
header("Content-Length: $size");
//Both of these flush methods must be called, otherwise strange things happen.
ob_end_flush();
flush();
echo "The client will never see this";
http://php.net/register_shutdown_function – 2014-09-12 16:12:21
你應該完全忘記這一點,而是調查爲什麼當'不需要顯示信息'時必須刪除數據庫的行' – Sebas 2014-09-12 16:24:18
@Sebas因爲這個工具拉來自7種不同的(只讀類型)數據庫,並將所有信息編譯到一個頁面上。它有它自己的那些不影響原始數據數據庫的數據的排序條目。因此,如果數據從其中一個數據庫中刪除,直到下一次加載我的頁面纔會發現它。所以,當我的頁面加載時,我需要刪除我不再存在的數據的訂單條目。不,我不能編輯改變數據庫的代碼來改變我的代碼。 – TheBat 2014-09-12 17:13:56