Contoh
Hasilkan lacak balik PHP:
<?php
function a($txt) {
b("Rafi");
}
function b($txt) {
c("Baba");
}
function c($txt) {
var_dump(debug_backtrace());
}
a("Radja");
?>
/* Output : array(3) { [0]=> array(4) { ["file"]=> string(21) "/home/Wd5EvK/prog.php" ["line"]=> int(10) ["function"]=> string(1) "c" ["args"]=> array(1) { [0]=> string(9) "Baba" } } [1]=> array(4) { ["file"]=> string(21) "/home/Wd5EvK/prog.php" ["line"]=> int(7) ["function"]=> string(1) "b" ["args"]=> array(1) { [0]=> string(5) "Rafi" } } [2]=> array(4) { ["file"]=> string(21) "/home/Wd5EvK/prog.php" ["line"]=> int(15) ["function"]=> string(1) "a" ["args"]=> array(1) { [0]=> string(5) "Radja" } } }
Definisi dan Penggunaan
Fungsi debug_backtrace() dapat menghasilkan lacak balik PHP.
Fungsi ini menampilkan data dari kode yang mengarah ke fungsi debug_backtrace().
Mengembalikan larik larik asosiatif. Elemen yang mungkin dikembalikan adalah:
| Nama | Tipe | Deskripsi |
|---|---|---|
| function | string | Nama fungsi |
| line | integer | Nomor baris |
| file | string | Nama file |
| class | string | Nama kelas |
| object | object | Objek |
| type | string | Jenis panggilan saat ini. Panggilan yang memungkinkan: Return: “->” – Metode panggilan Return: “::” – Pemanggilan metode statis Tidak mengembalikan apa-apa – Panggilan fungsi |
| args | array | Jika di dalam suatu fungsi maka akan mencantumkan argumen fungsi. Jika di dalam file yang disertakan, itu mencantumkan nama file yang disertakan |
Syntax
debug_backtrace(options, limit);
Nilai Parameter
| Parameter | Deskripsi |
|---|---|
| options | Optional. Menentukan bitmask untuk opsi berikut: DEBUG_BACKTRACE_PROVIDE_OBJECT (Apakah akan mengisi indeks “objek” atau tidak DEBUG_BACKTRACE_IGNORE_ARGS (Apakah indeks “args” dihilangkan atau tidak, dan semua argumen fungsi / metode, untuk menghemat memori) |
| limit | Optional. Membatasi jumlah bingkai tumpukan yang dicetak. Secara default (limit = 0) mencetak semua frame tumpukan |
Detail Teknis
| Return Value: | Larik array asosiatif |
|---|---|
| PHP Version: | 4.3+ |
| PHP Changelog: | PHP 5.4: Batas parameter opsional telah ditambahkan PHP 5.3.6: Parameter give_object diubah menjadi opsi dan opsi tambahan DEBUG_BACKTRACE_IGNORE_ARGS ditambahkan PHP 5.2.5: Parameter opsional menyediakan_object telah ditambahkan PHP 5.1.1: Menambahkan objek saat ini sebagai kemungkinan elemen pengembalian |