我创建了一个类Debug
,其中所有属性和方法都是静态的。使用后期静态绑定,我使用这个类作为记录器,记录正在做什么以及在哪个时刻(实际上我正在测试现在的性能问题,所以我想知道什么时候发生了什么)。
所以目前我在每个类的每个主要方法中都有一些东西,比如Debug::log(__CLASS__ . '::' . __METHOD__);
. 在Debug::log()
方法中,我可以添加时间并将其存储在某个数组中。
如果我想有一天改变行为,我需要在许多文件中更改大量代码......
我的问题是:是否有可能以某种方式省略这些__CLASS__ . '::' . __METHOD__
,并且该Debug::log()
方法会知道从哪个类以及从哪个方法调用它?
也许是调用堆栈?