查看闭包函数的函数体 函数图像 反函数 对数函
程序员文章站
2022-04-23 11:37:57
...
在调试的时候 如果遇到了闭包,很想知道具体是那个闭包。可是ide一般不会显示闭包的函数体。于是从网上抄了个函数用于显示闭包函数的内容
function my_closure_dump(Closure $c) { $str = 'function ('; $r = new \ReflectionFunction($c); $params = array(); foreach($r->getParameters() as$p) { $s = ''; if($p->isArray()) { $s .= 'array '; } elseif($p->getClass()) { $s .= $p->getClass()->name . ' '; } if($p->isPassedByReference()){ $s .= '&'; } $s .= '$' . $p->name; if($p->isOptional()) { $s .= ' = ' . var_export($p->getDefaultValue(), TRUE); } $params []= $s; } $str .= implode(', ', $params); $str .= '){' . PHP_EOL; $lines = file($r->getFileName()); for($l = $r->getStartLine(); $l $r
下一篇: 数据库对象视图轻松走进数据库系列七