PHP - 自动将行号作为函数参数传递

时间:2015-10-28 10:48:02

标签: php

我正在用PHP编写Logger类。有没有办法,如何从呼叫中自动传递行号和脚本文件?

样品:

Logger::Log("message", __LINE__, __FILE__)

我想自动传递__LINE____FILE__,而无需编写它。我试图制作

public static function Log($msg, $l = __LINE__, $f = __FILE__) { ... }

但是这个传递行号和Log方法的文件。这在PHP中甚至可能吗?

1 个答案:

答案 0 :(得分:6)

您可以使用var obj = {}; obj[id] = {large object}; // Free the id delete obj[id]; 内的debug_backtrace来检索调用堆栈,其中包含调用Logger::Log的代码的文件和行号。这通常包含在记录器中是明智的。