Heim >Backend-Entwicklung >PHP-Tutorial >Stack-Debugging in PHP

Stack-Debugging in PHP

WBOY
WBOYOriginal
2016-08-08 09:19:501037Durchsuche

Möchten Sie wissen, aus welchen Dateien die aktuelle Funktion aufgerufen wird? Wenn wir diese Pfade kennen, können wir den Ausführungsprozess des Programms gut verstehen. Dies ist sehr wichtig und ist auch die Grundlage dafür Die Programme anderer Leute verstehen. Dann stelle ich Ihnen eine Methode zum Stack-Debuggen in PHP vor. debug_backtrace();

Das Folgende ist eine kurze Einführung Für Details lese ich das Handbuch gerne.

<code>$statcks = debug_backtrace();
$tmp_arr = array();
<span>if</span>(!$stacks) <span>return</span> $tmp_arr;
foreach($stacks as $k=>$v)
        {
            $tmp[$k][<span>'file'</span>] = isset($v[<span>'file'</span>]) ? $v[<span>'file'</span>] : <span>'--'</span>;
            $tmp[$k][<span>'line'</span>] = isset($v[<span>'line'</span>])? $v[<span>'line'</span>] : <span>'--'</span>;
            $tmp[$k][<span>'function'</span>] = isset($v[<span>'function'</span>]) ? $v[<span>'function'</span>] : <span>'--'</span>;
        }


Array
(
    [<span>0</span>]<span> =></span> Array
        (
            [file]<span> =></span><span>D</span>:\wwwroot\CodeIgniter\application\controllers\finance\channel.php
            [line]<span> =></span><span>128</span>
            [<span>function</span>]<span> =></span> get_total_rows
        )

    [<span>1</span>]<span> =></span> Array
        (
            [file]<span> =></span> --
            [line]<span> =></span> --
            [<span>function</span>]<span> =></span> index
        )

    [<span>2</span>]<span> =></span> Array
        (
            [file]<span> =></span><span>D</span>:\wwwroot\CodeIgniter\application\controllers\finance\channel.php
            [line]<span> =></span><span>46</span>
            [<span>function</span>]<span> =></span> call_user_func
        )

    [<span>3</span>]<span> =></span> Array
        (
            [file]<span> =></span> --
            [line]<span> =></span> --
            [<span>function</span>]<span> =></span> get_nav
        )

    [<span>4</span>]<span> =></span> Array
        (
            [file]<span> =></span><span>D</span>:\wwwroot\CodeIgniter\system\core\CodeIgniter.php
            [line]<span> =></span><span>360</span>
            [<span>function</span>]<span> =></span> call_user_func_array
        )

    [<span>5</span>]<span> =></span> Array
        (
            [file]<span> =></span><span>D</span>:\wwwroot\CodeIgniter\index.php
            [line]<span> =></span><span>205</span>
            [<span>function</span>]<span> =></span> require_once
        )

)</code>

Hier ist das gedruckte Array, es ist sehr gut

Urheberrechtserklärung: Bei diesem Artikel handelt es sich um einen Originalartikel des Bloggers. Eine Vervielfältigung ist ohne die Genehmigung des Bloggers nicht gestattet.

Das Obige stellt das Stack-Debugging in PHP vor, einschließlich seiner Aspekte. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

Stellungnahme:
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