Skip to content

Commit b0a3082

Browse files
committed
Tweak route collector
Handle closure
1 parent e4daec3 commit b0a3082

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

src/DataCollector/IlluminateRouteCollector.php

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,20 +50,29 @@ protected function getRouteInformation($route)
5050
}
5151
$uri = head($route->methods()) . ' ' . $route->uri();
5252
$action = $route->getAction();
53-
53+
5454
$result = array(
5555
'uri' => $uri ?: '-',
5656
);
5757

5858
$result = array_merge($result, $action);
59-
60-
if (isset($action['controller']) && strpos($action['controller'], '@') !== false) {
59+
60+
61+
if (isset($action['controller']) && strpos($action['controller'], '@') !== false) {
6162
list($controller) = explode('@', $action['controller']);
6263
if(class_exists($controller)) {
6364
$reflector = new \ReflectionClass($controller);
64-
$result['file'] = $reflector->getFileName();
6565
}
66-
}
66+
unset($result['uses']);
67+
} elseif (isset($action['uses']) && $action['uses'] instanceof \Closure) {
68+
$reflector = new \ReflectionFunction($action['uses']);
69+
$result['uses'] = 'Closure';
70+
}
71+
72+
if (isset($reflector)) {
73+
$filename = str_replace(base_path(), '', $reflector->getFileName());
74+
$result['file'] = $filename . ':' . $reflector->getStartLine();
75+
}
6776

6877
if ($before = $this->getBeforeFilters($route)) {
6978
$result['before'] = $before;

0 commit comments

Comments
 (0)