Intereting Posts
Как работает это гигантское регулярное выражение? Заменить символ Юникода Как включить генерируемые страницы CodeIgniter? Получение соединения PHP PDO из mysql_connect ()? Является ли это безопасным способом фильтрации данных и предотвращения SQL-инъекций и других атак? Как декодировать «Content-Encoding: gzip, gzip» с помощью curl? PHP Загрузка файлов – проверка только изображений Является ли MVC единственным способом писать PHP? Шифрование пользовательских данных для автоматического входа в систему сторонних производителей softlayer api: как получить дополнительные адреса виртуальной машины Что не так с моим FeatureContext? Как написать PHP $ _POST vars в функции mysql_query? PHP, отображение изображения с заголовком () Не предоставлять доступ к определенному методу в контроллере, если сеанс не установлен в кодеигниторе Регулярное выражение для замены относительной ссылки с корневой относительной ссылкой

Журнал ошибок Codeigniter, не включая имя файла

Я пытаюсь регистрировать ошибки из моего веб-приложения codeigniter, и я думаю, что сообщения, которые записываются в файл, усекаются. Я говорю это, потому что всякий раз, когда ошибка отображается на экране, я получаю имя файла, где произошла ошибка, тогда как когда я проверяю журналы ошибок, он говорит только:

Ошибка запроса: у вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с '' по строке 24

Есть ли способ, чтобы журнал ошибок возвращал местоположение файла ошибки?

Solutions Collecting From Web of "Журнал ошибок Codeigniter, не включая имя файла"

Нет, в настоящее время в CodeIgniter нет встроенного способа сделать это.

Что вы можете сделать, так это расширить основной класс CI_Log , переопределить его write_log() и использовать debug_backtrace() чтобы получить соответствующее имя файла и добавить его в сообщение.

 // application / core / MY_Log.php
 класс MY_Log расширяет CI_Log {

     public function write_log ($ level, $ msg)
     {
         foreach (debug_backtrace () как $ call)
         {
             // Как-то найти соответствующий звонок здесь ...
             if (! (/ * условие для игнорирования вызовов обработки ошибок * /))
             {
                 ломать;
             }

             $ msg = '['. $ call ['file']. ']'. $ msg;
             ломать;
         }

         return parent :: write_log ($ level, $ msg);
     }

 }