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,
    ),
  ),
相关推荐
不正经学生6 小时前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技6 小时前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
恋恋西风8 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx8 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_9 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_9 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu10 小时前
CSharp: 万年历
开发语言·后端·c#·.net
我找到地球的支点啦10 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
予昊10 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_4614085811 小时前
Mybatis-flex小记
java·开发语言·mybatis