Как отлаживать фатальные ошибки php в Silex Framework

Интересно, как я могу увидеть синтаксические ошибки, подобные этому (отсутствующая точка с запятой):

<?php var_dump($app) ?> 

Это вызовет WSOD (белый экран смерти).

Я попытался включить конфигурационный файл отладки, который выглядит так:

 use Symfony\Component\Debug\ErrorHandler; use Symfony\Component\Debug\Debug; // Include the prod configuration require __DIR__.'/prod.php'; // Enable PHP Error level error_reporting(E_ALL); ini_set('display_errors','On'); // Enable debug mode $app['debug'] = true; // Handle fatal errors ErrorHandler::register(); Debug::enable(); 

Я включил в композитор json файл:

«symfony / debug»: «~ 2.3»,

Но все равно никаких изменений. Что я забыл?

Solutions Collecting From Web of "Как отлаживать фатальные ошибки php в Silex Framework"

Попробуй это:

 use Symfony\Component\HttpKernel\Debug\ErrorHandler; use Symfony\Component\HttpKernel\Debug\ExceptionHandler; // set the error handling ini_set('display_errors', 1); error_reporting(-1); ErrorHandler::register(); if ('cli' !== php_sapi_name()) { ExceptionHandler::register(); } // init application $app = new Silex\Application(); // set debug mode $app['debug'] = true $app->run(); 

важно установить обработку ошибок до инициализации приложения $.

Для установки Symfony / debug с использованием composer require symfony/debug и добавьте эти строки перед экземпляром Silex \ Application

 use \Symfony\Component\Debug\ErrorHandler; use \Symfony\Component\Debug\ExceptionHandler; ini_set('display_errors', 0); error_reporting(-1); ErrorHandler::register(); ExceptionHandler::register();