2015-09-08 3 views
0

У меня есть 10000 строк кода, описывающих маршруты моего API, реализованные с использованием Slim Framework. Однако, я получил сообщение об ошибке preg_match(): Compilation failed: two named subpatterns have the same name at offset 89. Проблема в том, что я получил трассировку стека, ссылаясь на этот оператор preg_match('/cost-centers...', '/overview/funds...', NULL) на Slim Route.php. Теперь, когда мои URL-адреса являются длинными, я не могу определить, какие из URL-адресов имеют одинаковое имя.Как получить подробную трассировку тонкой ошибки приложения

Есть ли способ иметь более подробную трассировку стека вместо отображения этого сокращенного формата?

+1

Я не пробовал сам, но [пользовательский обработчик ошибок] (http://docs.slimframework.com/errors/500/) вместе с https: //stackoverflow.com/questions/1949345/how-can-i-get-the-full-string-of-php-s-gettraceasstring должен делать то, что вы пытаетесь сделать. – Martin

ответ

1

Благодарим за это сообщение.

Я только что использовал custom error handler с PHP Exception::getTrace(). Я также отключил отладку Slim по умолчанию, чтобы убедиться, что вызывается обработчик пользовательских ошибок.

код выглядит следующим образом:

$app = new \Slim\Slim(array(
    'debug' => false 
)); 
$app->error(function (\Exception $e) use ($app) { 
    //enter manipulation of $e->getTrace() 
    //or just var_dump($e->getTrace()) but the format would be chaotic 
}); 
Смежные вопросы