Fungsi debug_backtrace() PHP

Contoh

Membuat backtrace PHP:

<?php
 function a($txt) {
     b("Glenn");
 }
 function b($txt) {
     c("Cleveland");
}
 function c($txt) {
     var_dump(debug_backtrace());
 }
 a("Peter");
 ?> 

Keluaran kode di atas seperti ini:

Array (
     [0] => Array (
         [file] => C:\webfolder\test.php
         [line] => 6
         [function] => c
         [args] => Array (
             [0] => Cleveland
         )
     )
     [1] => Array (
         [file] => C:\webfolder\test.php
         [line] => 3
         [function] => b
         [args] => Array (
             [0] => Glenn
         )
     )
     [2] => Array (
         [file] => C:\webfolder\test.php
         [line] => 11
         [function] => a
         [args] => Array (
             [0] => Peter
         )
     )
 )

Definisi dan penggunaan

Fungsi debug_backtrace() menghasilkan backtrace (pengawalan balik).

Fungsi ini menampilkan data yang dihasilkan oleh kode fungsi debug_backtrace().

Mengembalikan sebuah array yang berhubungan. Element yang mungkin dikembalikan seperti berikut:

Nama Tipe Deskripsi
fungsi string Nama fungsi saat ini
line integer Nomor baris saat ini
file string Nama file saat ini
kelas string Nama kelas saat ini
objek objek Objek saat ini
type string

Tipe panggilan saat ini. Tipe yang mungkin:

  • Mengembalikan: "->" - panggilan method
  • Mengembalikan: "::" - panggilan method statis
  • Mengembalikan nothing - panggilan fungsi
args array Jika dalam fungsi, daftar parameter fungsi. Jika dalam file yang diutamakan, daftar nama file yang diutamakan.

Syarat

debug_backtrace(pilihan,batas);
Parameter Deskripsi
pilihan

Pilihan. Tentukan maske bit untuk opsi berikut:

  • DEBUG_BACKTRACE_PROVIDE_OBJECT (Apakah mengisi indeks "object")
  • DEBUG_BACKTRACE_IGNORE_ARGS (Apakah mengabaikan indeks "args", termasuk semua parameter function/method, dapat menghemat biaya memori.)
batas Pilihan. Mengatur jumlah frame tumpukan yang dikembalikan. Default adalah (batas=0) mengembalikan semua frame tumpukan.

Detil Teknis

Nilai kembalian: None
Versi PHP: 4.3+
Log Pembaruan PHP

PHP 5.4: Menambahkan parameter pilihan batas.

PHP 5.3.6: Parameter provide_object ubah pilihandan menambahkan parameter pilihan DEBUG_BACKTRACE_IGNORE_ARGS.

PHP 5.2.5: Menambahkan parameter pilihan provide_object.

PHP 5.1.1: Menambahkan saat ini objek Untuk elemen yang mungkin dikembalikan.