Мои предложения не проверены, вот несколько вещей, которые можно попробовать:
Если необходимые / включенные файлы php являются классами , автозагрузка может быть опцией
function __autoload($class)
{
// try to load
}
Если вы можете обернуть require / includes в блоке try catch, устанавливая обработчик ошибок для использования исключений может также работает: Обновление: не работает: (
function exception_error_handler($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, $errno, 0, $errfile, $errline);
}
set_error_handler("exception_error_handler");
Если код, который нужно протестировать, можно проверить в командной строке с помощью popen и xdebug, то вы запустите программу в отдельном процессе, если pclose
вернет -1, вы можете проанализировать обратную трассировку из xdebug.
$cmd = 'php --php-ini path/php.ini file/to/run.php';
$output = '';
$popen = popen($cmd, 'rb');
while (!feof($popen)) {
$output .= fread($popen, 4096);
}
if (pclose($popen) < 0) {
// error - parse $output for xdebug backtrace
}