اتصال قطع شده؟ (connection_aborted)
تابع connection_aborted() بررسی می کند آیا «کلاینت (Client)» ارتباط را قطع کرده است یا نه. اگر کاربر صفحه را ببندد، مقدار 1 برمی گردد. در غیر این صورت 0 برمی گردد. این برای ثبت لاگ یا توقف کار مفید است.
تعریف و کاربرد
طبق منبع، connection_aborted() قطع شدن ارتباط کاربر را چک می کند. مقدار بازگشتی 1 یا 0 است. این تابع از PHP 4+ در دسترس است. معمولاً با register_shutdown_function() همراه می شود تا پایان اسکریپت وضعیت بررسی شود.
نمونه کد از منبع
در پایان اجرای اسکریپت، اگر اتصال قطع شده باشد، پیام در لاگ نوشته می شود.
<?php
function check_abort()
{
if (connection_aborted())
{
error_log(
"Script " . $GLOBALS['SCRIPT_NAME'] . $GLOBALS['SERVER_NAME'] .
" was aborted by the user."
);
}
}
// Some script to be executed here
// Call the check_abort function when the script ends
register_shutdown_function("check_abort");
?>
گام های سریع تمرین
- تابع
check_abort()را در فایل PHP بساز. - کد اصلی خود را اجرا کن و کمی تاخیر بساز.
- صفحه را ببند و لاگ را بررسی کن.
نکات فنی کوتاه
- 1 یعنی اتصال قطع شده است.
- 0 یعنی اتصال برقرار است.
- برای ثبت رخداد، از
error_log()استفاده کن.
نکته: اگر نیاز به صفحه راهنما داری، به مرجع «متفرقه» سر بزن: توابع متفرقه PHP. همچنین می توانی یک لینک داخلی با کلیدواژه «قطع اتصال کاربر» بسازی: قطع اتصال کاربر.
جمع بندی سریع
- برای تشخیص بستن صفحه کاربر است.
- خروجی فقط 1 یا 0 است.
- با
register_shutdown_functionجفت خوبی است. - ثبت خطا با
error_logساده است.