Cet article présente principalement les informations de débogage sur le point d'appel d'impression de la fonction debug_backtrace() en PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
debug_backtrace (PHP 4 >= 4.3.0, PHP 5, PHP 7)debug_backtrace —Générer une trace
Descriptiontableaudebug_backtrace ([int$options
= DEBUG_BACKTRACE_PROVIDE_OBJECT [,int$limit
= 0 ]] )
debug_backtrace() génère une trace PHP).
Paramètresoptions
DEBUG_BACKTRACE_PROVIDE_OBJECT | 是否填充 "object" 的索引。 |
DEBUG_BACKTRACE_IGNORE_ARGS | 是否忽略 "args" 的索引,包括所有的 function/method 的参数,能够节省内存开销。 |
Avant la version 5.3.6, les seules valeurs pouvant être utilisées étaientTRUE
ouFALSE
, qui étaient respectivement égales à l'opportunité de définir l'optionDEBUG_BACKTRACE_PROVIDE_OBJECT
.
limit
Depuis la version 5.4.0, ce paramètre peut être utilisé pour limiter le nombre de frames de pile renvoyés. La valeur par défaut est (limit
=0), qui renvoie tous les cadres de pile.
Renvoie untableau contenant de nombreux tableaux associatifs. Éléments pouvant être renvoyés :
名字 | 类型 | 说明 |
---|---|---|
function | string | 当前的函数名,参见: __FUNCTION__。 |
line | integer | 当前的行号。参见: __LINE__。 |
file | string | 当前的文件名。参见: __FILE__。 |
class | string | 当前 class 的名称。参见 __CLASS__ |
object | object | 当前的 object。 |
type | string | 当前调用的类型。如果是一个方法,会返回 "->"。如果是一个静态方法,会返回 "::"。 如果是一个函数调用,则返回空。 |
args | array | 如果在一个函数里,这会列出函数的参数。 如果是在一个被包含的文件里,会列出包含的文件名。 |
版本 | 说明 |
---|---|
5.4.0 | 添加了可选的参数limit 。 |
5.3.6 | 参数provide_object 改成options ,并且增加了可选参数DEBUG_BACKTRACE_IGNORE_ARGS 。 |
5.2.5 | 添加了可选参数provide_object 。 |
5.1.1 | 添加了当前的object 为可能返回的元素。 |
Version th> | Description |
---|---|
5.4.0 | Paramètres facultatifs ajoutés . |
5.3.6 | Le paramètreprovide_object a été modifié en , et les paramètres facultatifs ont été ajout deDEBUG_BACKTRACE_IGNORE_ARGS . |
5.2.5 | Ajout du paramètre facultatifprovide_object . |
5.1.1 | Ajout de l'objet actuel comme élément renvoyé possible. |
Exemple n°1Exemple debug_backtrace()
Exécution Le résultat renvoyé est similaire au suivant :
Hi: friend array(2) { [0]=> array(4) { ["file"] => string(10) "/tmp/a.php" ["line"] => int(10) ["function"] => string(6) "a_test" ["args"]=> array(1) { [0] => &string(6) "friend" } } [1]=> array(4) { ["file"] => string(10) "/tmp/b.php" ["line"] => int(2) ["args"] => array(1) { [0] => string(10) "/tmp/a.php" } ["function"] => string(12) "include_once" } }
Ci-dessus, c'est tout le contenu de cet article. J'espère qu'il sera utile à l'étude de tout le monde. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !
Recommandations associées :
Comment utiliser var_export en PHP
À propos d'un problème rencontré avec les opérateurs conditionnels PHP et la solution
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!