PHP set_error_handler()ฟังก์ชั่น
ตัวอย่าง
ตั้งค่าฟังก์ชันตัวจัดการข้อผิดพลาดที่ผู้ใช้กำหนดด้วยฟังก์ชัน set_error_handler() และทริกเกอร์ข้อผิดพลาด (ด้วย trigger_error()):
<?php
// A user-defined error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// Set user-defined error handler function
set_error_handler("myErrorHandler");
$test=2;
// Trigger error
if ($test>1) {
trigger_error("A custom error has been triggered");
}
?>
ความหมายและการใช้งาน
ฟังก์ชัน set_error_handler() ตั้งค่าฟังก์ชันตัวจัดการข้อผิดพลาดที่ผู้ใช้กำหนด
หมายเหตุ:ตัวจัดการข้อผิดพลาด PHP มาตรฐานจะถูกข้ามโดยสิ้นเชิงหากใช้ฟังก์ชันนี้ และตัวจัดการข้อผิดพลาดที่ผู้ใช้กำหนดเองต้องยุติสคริปต์ die() หากจำเป็น
หมายเหตุ:หากเกิดข้อผิดพลาดก่อนเรียกใช้สคริปต์ ตัวจัดการข้อผิดพลาดที่กำหนดเองจะไม่สามารถใช้งานได้ เนื่องจากไม่ได้ลงทะเบียนในขณะนั้น
ไวยากรณ์
set_error_handler(errorhandler, E_ALL | E_STRICT)
ค่าพารามิเตอร์
Parameter | Description |
---|---|
errorhandler | Required. Specifies the name of the function to be run at errors |
E_ALL|E_STRICT | Optional. Specifies on which error report level the user-defined error will be shown. Default is "E_ALL" |
รายละเอียดทางเทคนิค
คืนมูลค่า: | สตริงที่มีตัวจัดการข้อผิดพลาดที่กำหนดไว้ก่อนหน้านี้ |
---|---|
รุ่น PHP: | 4.0.1+ |
บันทึกการเปลี่ยนแปลง PHP: | PHP 5.5: ตัวจัดการข้อผิดพลาดพารามิเตอร์ยอมรับ NULL PHP 5.2: ตัวจัดการข้อผิดพลาดต้องส่งคืน FALSE เพื่อเติม $ php_errormsg |
การอ้างอิงข้อผิดพลาด PHP