php 方法追踪其被调用的踪迹

一、遇到的问题

一个公共方法,有多个调用入口,快速排查到其被调用的入口

二、解决

使用debug_backtrace(),其记录了调用方法的所有上层方法,如下为打印的debug_backtrace()的数据,从键值0开始,依次往上一层一层推经过的方法,直到调用方法的入口。

debug_backtrace()可用于捕捉异常,发送异常邮件。

php 复制代码
array (
  0 => 
  array (
    'file' => 'trunk\\data\\test.php',
    'line' => 133,
    'function' => 'getTrace',
    'class' => 'TestDataKernel',
    'args' => 
    array (
      0 => 630,
      1 => 19,
      2 => '多元化集团',
      3 => 0,
      4 => 1,
    ),
  ),
  1 => 
  array (
    'file' => '\\trunk\\business\\business.test.php',
    'line' => 3617,
    'function' => 'testName',
    'class' => 'TestDataKernel',
    'args' => 
    array (
      0 => 630,
      1 => 19,
      2 => '多元化集团',
      3 => 0,
      4 => 1,
    ),
  ),
相关推荐
skywalk81636 小时前
Trae生成的中文编程语言关键字(如“定“、“函“、“印“等)需要和标识符之间用 空格 隔开,以确保正确识别
服务器·开发语言·编程
红色的小鳄鱼6 小时前
前端面试js手写
开发语言·前端·javascript
海盗12346 小时前
C#中的IEqualityComparer<T>使用
开发语言·c#
江公望7 小时前
Qt QSharedPointer用法,10分钟讲清楚
开发语言·qt
月落归舟7 小时前
深入理解Java适配器模式,彻底搞懂设计思想
java·开发语言·适配器模式
Mr_pyx7 小时前
【LeetHOT100】二叉树的中序遍历——Java多解法详解
java·开发语言·深度优先
m0_738120727 小时前
渗透测试——Djinn1靶场详细渗透提权过程讲解(绕过黑名单限制,命令执行反弹shell,pyc反编译,代码白盒分析,python沙盒逃逸)
开发语言·python·php
web守墓人8 小时前
【go语言】go语言实现go-torch, 完成Lenet-5的搭建,训练,以及pth和onnx模型导出
开发语言·后端·golang
TEC_INO8 小时前
Linux50:ROCKX+RV1126视频流检测人脸
开发语言·前端·javascript
平凡但不平庸的码农8 小时前
Go 语言常用标准库详解
开发语言·后端·golang