Есть ли способ иметь ошибки журнала PHP
в файле или отправлять мне по электронной почте ошибки, INCLUDING $_POST[]
& $_GET[]
и $_SERVER[]
данные?
Прямо сейчас я получаю журнал ошибок PHP FATAL
и WARNING
и 404 NOT_FOUND
ошибок 404 NOT_FOUND
но трудно отладить некоторые ошибки, не зная таких вещей, как ввод пользователя и реферер.
благодаря
error_log(print_r($_POST, true)); error_log(print_r($_GET, true));
Поместите это в специальный обработчик ошибок, и он будет записывать оба для вас (параметр «истина» делает print_r вместо текста выводимым текстом).
Возможно, вам понадобится увеличить максимальную длину строки в журнале ошибок с помощью log_errors_max_len
, поскольку по умолчанию она log_errors_max_len
1024 log_errors_max_len
, и после этого будет усекать все (он не будет разделять> 1024 символа на нескольких строках).
Если вы используете PHP 5, создайте специальный класс исключений, который расширит собственный класс исключений PHP и добавит любые методы сбора и ведения данных, которые вам нравятся. Таким образом, вы можете легко комбинировать блок try {} catch() {}
с Exceptions и иметь собственный способ управления тем, как вы хотите регистрировать все данные.
Я бы рекомендовал функцию error_log (). Я использую это много, чтобы отлаживать материал в php. http://php.net/manual/en/function.error-log.php
Я работал над проектом связи, который использовал CI для работы с интерфейсом на основе Felx, мы захватили все возможные сообщения об ошибках и написали оболочку о функциях syslog и использовали ее в нашем приложении, в результате мы могли регистрировать любые данные, которые мы хотели, и журнал был видимый через просмотр системного журнала 🙂