ฟังก์ชัน register_shutdown_function
ฟังก์ชัน register_shutdown_function อนุญาตให้ลงทะเบียน callback-ฟังก์ชันที่จะถูกดำเนินการเมื่อสคริปต์สิ้นสุดการทำงานหรือเมื่อเกิดข้อผิดพลาดร้ายแรง พารามิเตอร์แรกคือชื่อฟังก์ชันหรือฟังก์ชันแบบไม่ระบุชื่อ พารามิเตอร์ต่อๆ ไป (ไม่บังคับ) คืออาร์กิวเมนต์สำหรับฟังก์ชันนั้น
ไวยากรณ์
register_shutdown_function(callable $callback, mixed ...$args): void
ตัวอย่าง
การลงทะเบียนฟังก์ชันง่ายๆ สำหรับการสิ้นสุด:
<?php
function shutdown() {
echo 'สคริปต์ทำงานเสร็จสิ้น';
}
register_shutdown_function('shutdown');
echo 'สคริปต์กำลังทำงาน...';
?>
ผลลัพธ์จากการรันโค้ด:
สคริปต์กำลังทำงาน...สคริปต์ทำงานเสร็จสิ้น
ตัวอย่าง
การใช้ฟังก์ชันแบบไม่ระบุชื่อ:
<?php
register_shutdown_function(function() {
echo 'การทำความสะอาดเสร็จสิ้น';
});
echo 'การดำเนินการหลัก...';
?>
ผลลัพธ์จากการรันโค้ด:
การดำเนินการหลัก...การทำความสะอาดเสร็จสิ้น
ตัวอย่าง
การส่งอาร์กิวเมนต์ไปยัง shutdown-ฟังก์ชัน:
<?php
function logShutdown($message) {
echo $message;
}
register_shutdown_function('logShutdown', 'สคริปต์ปิดทำงานที่เวลา: ' . date('H:i:s'));
echo 'กำลังประมวลผลข้อมูล...';
?>
ผลลัพธ์จากการรันโค้ด:
กำลังประมวลผลข้อมูล...สคริปต์ปิดทำงานที่เวลา: [current_time]
ดูเพิ่มเติม
-
ฟังก์ชัน
error_reporting,
ซึ่งตั้งค่าระดับการรายงานข้อผิดพลาด -
ฟังก์ชัน
set_exception_handler,
ซึ่งตั้งค่าตัวจัดการข้อผิดพลาดแบบไม่คาดคิด (exception)