Heim Backend-Entwicklung PHP-Tutorial Was macht die PHP-Funktion debug_backtrace()?

Was macht die PHP-Funktion debug_backtrace()?

Jul 11, 2017 am 09:14 AM
debug

定义和用法

PHP debug_backtrace() 函数生成一个 backtrace(回溯信息)。

该函数返回一个关联数组。下面是可能返回的元素:

名称 类型 描述
function 字符串 当前的函数名。
line 整数 当前的行号。
file 字符串 当前的文件名。
class 字符串 当前的类名
object 对象 当前对象。
type 字符串 当前的调用类型,可能的调用:
  • 返回: "->"  - 方法调用

  • 返回: "::"  - 静态方法调用

  • 返回 nothing - 函数调用

args 数组 如果在函数中,列出函数参数。如果在被引用的文件中,列出被引用的文件名。

语法

debug_backtrace()

例子

<?php
function one($str1, $str2) {
	two("Glenn", "Quagmire");
}

function two($str1, $str2) {
	three("Cleveland", "Brown");
}

function three($str1, $str2) {
	print_r(debug_backtrace());
}

one("Peter", "Griffin");
Nach dem Login kopieren

输出:

Array
(
    [0] => Array
        (
            [file] => D:\PHP\xampp\htdocs\52php\123\789.php
            [line] => 7
            [function] => three
            [args] => Array
                (
                    [0] => Cleveland
                    [1] => Brown
                )

        )

    [1] => Array
        (
            [file] => D:\PHP\xampp\htdocs\52php\123\789.php
            [line] => 3
            [function] => two
            [args] => Array
                (
                    [0] => Glenn
                    [1] => Quagmire
                )

        )

    [2] => Array
        (
            [file] => D:\PHP\xampp\htdocs\52php\123\789.php
            [line] => 14
            [function] => one
            [args] => Array
                (
                    [0] => Peter
                    [1] => Griffin
                )

        )

)
Nach dem Login kopieren

debug_backtrace函数理解1

debug_backtrace函数的作用为生成一个 backtrace。

debug_backtrace函数返回一个关联数组。

1.backtrace如何理解;

2.关联数组是否可以理解为可以新数组与原数组有联系;

debug_backtrace函数理解2

debug_backtrace函数的参数

function:当前的函数名。

1.当前的函数名是否为自定义的函数或者系统函数;

line:当前的行号。

1.line是否可以理解为调用函数所在的行数;

file:当前的文件名。

1.file可以理解为当前调试所在的文件

class:当前的类名

object:当前的对象。

type:当前的调用类型,可能的调用:

返回: "->" - 方法调用

返回: "::" - 静态方法调用

返回 nothing - 函数调用

1.各类方法的调用如何理解;

args[]数组如果在函数中,列出函数参数。如果在被引用的文件中,列出被引用的文件名。

debug_backtrace函数理解3

<?php 
function one($str1, $str2) { 
 two("Glenn", "Quagmire"); 
 } 
function two($str1, $str2) { 
 three("Cleveland", "Brown"); 
 } 
function three($str1, $str2) { 
 print_r(debug_backtrace()); 
 } 
 one("Peter", "Griffin"); 
?>
Nach dem Login kopieren

输出:

Array ( [0] => Array ( [file] => C:\wamp\www\web.php [line] => 89 [function] => three [args] => Array ( [0] => Cleveland [1] => Brown ) ) [1] => Array ( [file] => C:\wamp\www\web.php [line] => 86 [function] => two [args] => Array ( [0] => Glenn [1] => Quagmire ) ) [2] => Array ( [file] => C:\wamp\www\web.php [line] => 94 [function] => one [args] => Array ( [0] => Peter [1] => Griffin ) ) ) 

Das obige ist der detaillierte Inhalt vonWas macht die PHP-Funktion debug_backtrace()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So lösen Sie das Problem des ungültigen Debuggens beim Festlegen von Haltepunkten im SpringBoot-Projekt So lösen Sie das Problem des ungültigen Debuggens beim Festlegen von Haltepunkten im SpringBoot-Projekt May 11, 2023 am 10:49 AM

Ich bin neu im Springboot-Projekt. (1) Ich fand das Breakpoint-Debugging sehr deprimiert und suchte online nach Lösungen. Alles, was ich sah, waren einige sehr komplizierte Lösungen, die angeblich Remote-Debugging waren, aber auch zusätzliche Eröffnungsslogans erforderten. Das unterscheidet sich von einem herkömmlichen Projekt, daher halte ich es nicht für notwendig. Nach einiger Erkundung habe ich herausgefunden, dass es einen einfacheren Weg gibt. Die Schritte sind wie folgt: Fügen Sie eine Konfiguration im Plugin-Teil der POM-Datei hinzu: false und es wird in Ordnung sein (2) Bezüglich des im SpringBoot-Projekt gemeldeten Fehlers dass die Datei „web.xml“ fehlt, da für herkömmliche Webprojekte web.xml-Dateien erforderlich sind, für SpringBoot-Projekte jedoch keine web.xml-Dateien.

Führt Sie zum Debuggen des Nestjs-Projekts in VSCode (Tutorial) Führt Sie zum Debuggen des Nestjs-Projekts in VSCode (Tutorial) Apr 24, 2023 pm 05:53 PM

Freunde, die Vscode zum Schreiben von Projekten wie Node verwendet haben, wissen alle, dass wir, wenn wir ein Problem beheben möchten, es meist über console.log ausdrucken, um zu sehen, wo das Problem liegt. Wenn das Problem komplexer ist, wählen wir „Durch Vscode“. ...

So verwenden Sie IDEA Remote Connection Debug in Springboot So verwenden Sie IDEA Remote Connection Debug in Springboot May 10, 2023 pm 11:55 PM

1. Erstellen Sie zunächst eine Demo, die für das Remote-Debuggen bereit ist. Achten Sie auf die Konfiguration des Build-Projekts 4.0.0org.springframework.bootspring-boot-starter-parent2.1.4.RELEASEcom.remote.testremote_test0.0.1-SNAPSHOTremote_testDemoprojectforSpringBoot1.8org.springframework. bootspring-boot-starterorg.springframework.bootspring-bo

Wie man Überlaufprobleme effektiv bekämpft Wie man Überlaufprobleme effektiv bekämpft Jan 27, 2024 am 09:39 AM

So gehen Sie richtig mit Überlaufproblemen um Überlauf ist ein häufiges Problem bei der Computerprogrammierung, insbesondere beim Umgang mit Zahlen oder Arrays. Ein Überlauf tritt auf, wenn wir versuchen, einen Wert zu speichern, der den zulässigen Bereich des Datentyps überschreitet. Der Schlüssel zur Lösung dieses Problems liegt in der korrekten Handhabung und Validierung von Datengrenzen. Im Folgenden werden einige häufig auftretende Überlaufprobleme und entsprechende Lösungen vorgestellt. Integer-Überlauf Ein Integer-Überlauf bedeutet, dass das Ergebnis während der Berechnung den Darstellungsbereich des Integer-Typs überschreitet. Geben Sie beispielsweise die 32-Bit-Ganzzahl mit Vorzeichen ein

UCIe 2.0: Weiterentwicklung des offenen Chiplet-Ökosystems mit 3D-Packaging und Verwaltbarkeit UCIe 2.0: Weiterentwicklung des offenen Chiplet-Ökosystems mit 3D-Packaging und Verwaltbarkeit Aug 08, 2024 pm 12:51 PM

Das Universal Chiplet Interconnect Express (UCIe) Consortium hat die Veröffentlichung der UCIe 2.0-Spezifikation angekündigt, die das offene Chiplet-Ökosystem weiter vorantreibt. Die neueste Spezifikation führt mehrere wichtige Verbesserungen ein. Erstens wird die Unterstützung f hinzugefügt

So verwenden Sie Nocalhost und aktivieren das Debuggen in Python So verwenden Sie Nocalhost und aktivieren das Debuggen in Python May 14, 2023 pm 03:16 PM

Nocalhost ist ein Entwicklertool, das das Debuggen und Bereitstellen von Kubernetes-Anwendungen unterstützt. Für die Verwendung von Nocalhost für die Python-Entwicklung müssen die folgenden Schritte ausgeführt werden: Installieren Sie die Nocalhost-CLI. Es kann über das Installationspaket installiert werden, das auf der offiziellen Website von Nocalhost bereitgestellt wird. Konfigurieren Sie den Kubernetes-Cluster und installieren Sie das Nocalhost-Plugin. Sie können sich auf die Anleitung in der offiziellen Dokumentation von Nocalhost beziehen. Installieren Sie den Python-Interpreter und -Debugger auf dem lokalen Computer, z. B. Pythons eigene pdb oder die Bibliotheken pudb, ipdb usw. von Drittanbietern. Erstellen Sie ein Python-Projekt und fügen Sie die Debugger-Aufrufanweisung zum Code hinzu.

Was ist die Debugging-Methode in Python? Was ist die Debugging-Methode in Python? Apr 29, 2023 pm 09:01 PM

Der in diesem Artikel verwendete Testcode: fromtorchvisionimporttransformsfromtorchvision.datasetsimportFashionMNISTimportosos.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"#Datensatzvorbereitung train_data=FashionMNIST(root="./data/FashionMNIST",train=True,transform=transforms.

So debuggen Sie Code in PHP So debuggen Sie Code in PHP May 23, 2023 pm 05:40 PM

Bei der Entwicklung von PHP-Anwendungen stoßen Sie häufig auf Situationen, in denen Sie Code debuggen müssen. Das Debuggen ist ein notwendiger Schritt, um Programmprobleme zu beheben, Fehler in Ihrem Code zu finden und die Programmleistung zu verbessern. In PHP erfolgt das Debuggen mithilfe eines Debuggers. In diesem Artikel wird erläutert, wie Sie den Debugger zum Debuggen von Code in PHP verwenden. 1. Konfigurieren Sie die Debugging-Umgebung. Bevor Sie mit dem Debuggen beginnen, müssen Sie die Debugging-Umgebung konfigurieren. Der Zweck der Konfiguration der Debugumgebung besteht darin, die Ausführung des Debuggers zu ermöglichen, der Sie beim Debuggen Ihres Codes unterstützt. Es gibt zwei Haupttypen von PHP-Debuggern: XDebug und ZendDebug

See all articles