可能重复:
如何找出定义函数的位置?
包含php文件知道它的文件名?
我可以在PHP中获取函数声明开头的文件名和行号吗?
说,我有以下代码:
1. /**
2. * This function shows the foo bar.
3. */
4. function foo_bar($subject) {
5. echo "Foo bar:\n";
6. if ($subject == "none") {
7. trigger_error("Wrong argument given to 'foo_bar()' in ... on line ....", E_USER_WARNING);
8. }
9. ...
10. }
Run Code Online (Sandbox Code Playgroud)
当我调用时foo_bar("none"),该函数必须抛出这样的错误:
警告:第4行的/ home/web/mcemperor中的'foo_bar()'参数错误.
我可以检索函数声明的文件名和起始行号吗?
irc*_*ell 12
您正在寻找ReflectionFunction.
$r = new ReflectionFunction('foo_bar');
$file = $r->getFileName();
$startLine = $r->getStartLine();
Run Code Online (Sandbox Code Playgroud)
它就是这么简单......它适用于任何已定义的函数,无论您传递给构造函数参数.
| 归档时间: |
|
| 查看次数: |
3079 次 |
| 最近记录: |