ฟังก์ชัน debug_backtrace() สร้าง backtrace ส่งคืนอาร์เรย์ที่เชื่อมโยง องค์ประกอบที่ส่งคืนได้มีดังนี้ -
| ชื่อ | ประเภท | คำอธิบาย |
|---|---|---|
| ฟังก์ชัน | สตริง | ชื่อฟังก์ชันปัจจุบัน |
| ไลน์ | จำนวนเต็ม | หมายเลขบรรทัดปัจจุบัน |
| ไฟล์ | สตริง | ชื่อไฟล์ปัจจุบัน |
| คลาส | สตริง | ชื่อคลาสปัจจุบัน |
| วัตถุ | สตริง | วัตถุปัจจุบัน |
| พิมพ์ | สตริง | ประเภทการโทรปัจจุบัน หากมีการเรียกเมธอด "->" จะถูกส่งกลับ หากการเรียกใช้เมธอดแบบสแตติก "::" จะถูกส่งกลับ หากมีการเรียกใช้ฟังก์ชัน จะไม่มีการส่งคืน |
| หาเรื่อง | อาร์เรย์ | หากอยู่ภายในฟังก์ชัน จะแสดงอาร์กิวเมนต์ของฟังก์ชัน หากอยู่ในไฟล์ที่รวมไว้ รายการนี้จะแสดงชื่อไฟล์ที่รวมไว้ |
ไวยากรณ์
debug_backtrace(options, limit)
พารามิเตอร์
-
ตัวเลือก − บิตมาสก์สำหรับตัวเลือกที่ระบุด้านล่าง -
- DEBUG_BACKTRACE_PROVIDE_OBJECT:จะเติมดัชนี "วัตถุ" หรือไม่
- DEBUG_BACKTRACE_IGNORE_ARGS:ละเว้นดัชนี "args" และอาร์กิวเมนต์ฟังก์ชัน/เมธอดทั้งหมดหรือไม่ เพื่อบันทึกหน่วยความจำ
-
จำกัด − จำกัดจำนวนสแต็กเฟรมที่พิมพ์
คืนสินค้า
ฟังก์ชัน debug_backtrace() ส่งคืนอาร์เรย์ที่เชื่อมโยง องค์ประกอบที่ส่งคืนได้ระบุไว้ข้างต้น
ตัวอย่าง
ต่อไปนี้เป็นตัวอย่าง −
<?php
function display($str) {
echo "Hi: $str";
var_dump(debug_backtrace());
}
display('hello');
?> ผลลัพธ์
ต่อไปนี้เป็นผลลัพธ์ -
Hi: helloarray(1) {
[0]=>
array(4) {
["file"]=> string(36) "/var/www/tutorialspoint/php/test.php"
["line"]=> int(8)
["function"]=> string(8) "printStr"
["args"]=> array(1) {
[0]=>
&string(6) "hello"
}
}
}