Как увидеть ошибку php в включенном файле во время выходного буфера?

Пустой экран при использовании выходного буфера и ошибки синтаксиса в включенном файле.
PHP не показывает ошибок из выходного буфера.
Как увидеть синтаксические ошибки буфера вывода php?

В моем проекте я использовал @ для скрытия ошибок, если файл не существует. Но если файл существует и имеет фатальные ошибки, они также не отображались бы.

Вот пример кода.

<?php $title = 'Some title'; ob_start(); @include ('body.tpl'); //I have some php here $content = ob_get_clean(); ?><!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title><?= $title; ?></title> </head> <body> <?= $content; ?> </body> </html> 

Related of "Как увидеть ошибку php в включенном файле во время выходного буфера?"

Один из вариантов – переопределить обработчики ошибок и вызвать ob_end (); перед печатью брошенной ошибки / предупреждения / исключения. Другой вариант – часто проверять журнал ошибок, если вы сталкиваетесь с нечетным поведением.

Не используйте @include ('body.tpl'); Что я сделал 🙁

Mmm … Вы можете использовать Exceptions следующим образом:

 $includeFile = 'blah.php'; ob_start(); try { if (!is_file($includeFile)) { throw new Exception('File not found'); } include $includeFile; } catch (Exception $e) { include 'error-content-page.php'; } $content = ob_get_clean();