Как правило, PHP будет извергать свои ошибки в выходной HTML-поток при их возникновении, если только для параметра .ini не задано значение display_errors. Если вы хотите отобразить их в модальном всплывающем окне (окно оповещения, плавающий div и т. Д.), Вам потребуется добавить соответствующую логику в скрипт, чтобы захватить их:
<?php
$val = some_function_that_causes_an_error();
if (error_get_last()) {
$lasterror = error_get_last();
}
error_get_last () возвращает массив, перейдите по ссылке на документацию PHP, чтобы узнать, в каком формате.
Позже на вашей странице вам придется конвертировать ошибку в любой формат, который вы хотите, чтобы она отображалась. Базовая настройка будет:
<script type="text/javascript">
var errmsg = <?php echo json_encode($lasterror) ?>;
alert('Server error of type ' + errmsg.type + ' at line ' + errmsg.line + ' in script ' + errmsg.file + ': ' + errmsg.message);
</script>
Также помните, что фатальные ошибки (синтаксические ошибки, нехватка памяти и т. Д.) Не могут быть перехвачены и прервут сценарий, поэтому, если вы не обращаетесь к сценарию через AJAX, вы получите пустое страница или часть страницы, которая заканчивается сообщением об ошибке PHP.