Вы также можете рассмотреть возможность использования блока try {} catch {} и записи исключений в журнал ошибок в части catch {}. Как это:
try {
$db = new MyDb('127.0.0.1', 'root', 'root');
if (false === $db) {
throw new Exception ('Could not connect to the database.');
}
$row = $db->getTable('table_name')->getRowByColumn('id', $_GET['id']);
if (null === $row) {
throw new Exception ('Row with id ' . $_GET['id'] . ' not found.')
}
// and so on
} catch (Exception $e) {
$fp = fopen('logs/error.txt', 'w');
fwrite($fp, date('l jS \of F Y h:i:s A') . ': ' . $e->getMessage() . "\n");
fclose($fp);
}
Вы поняли.
Вместо просто даты ошибки вы также можете добавить логин зарегистрированного пользователя, если скрипт находится в защищенной области аутентификации, чтобы вы знали, какой пользователь получил эту ошибку.