Articles of Обработка ошибок

Как проверить неудачу DateTime в PHP?

Когда следующее получает плохие данные, PHP прерывается. PHP Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): Failed to parse time string (980671) at position 4 (7): Unexpected character' Как я могу поймать это, если данные плохие, чтобы предпринять другие действия, чтобы проблема PHP не прерывалась? $date = new DateTime($TRANSACTION_DATE_MMDDYY_raw);

PHP: пустая страница, отчет об ошибках не работает

Я запускаю пустую страницу, и хотя я сказал PHP сообщать обо всех ошибках, я все равно ничего не получаю, что заставляет меня думать, что это должна быть синтаксическая ошибка. Я не могу найти, что это такое. Вот сценарий, над которым я работаю: test.php <?php ini_set('display_errors', '1'); require('database.php'); print("hello"); $config = new Config("lessons.db","data/"); $db = new […]

PHP @ operator for include не отключает error_reporting

Я ищу лучшее решение, как отключить известные предупреждения (и не относится к моему сценарию), о которых сообщается из включенного файла. Краткое описание прилагаемого файла: $ cat incl_file.php <?php error_reporting(E_ALL); ini_set("display_errors", "on"); $x = $y; ?> Пример желаемого кода (который не мешает отображать ошибки из включенного файла) $ cat main2.php <?php error_reporting(E_ALL); ini_set("display_errors", "on"); @include_once "incl_file.php"; […]

PHP: сканирование всех каталогов / папок для экземпляров файлов PHP «error_log»

Что было бы эффективным способом заставить PHP проверять все каталоги для экземпляров файлов «error_log» (сгенерированных файлов журнала ошибок PHP) и сохранять их местоположение / пути в массиве? Дело в том, чтобы знать об ошибках, которые не регистрируются в базе данных и обходя необходимость вручную переходить через каждый каталог через FTP. Сэкономленное время будет лучше использоваться […]

register_shutdown_function в Zend Framework

Я пытаюсь поймать фатальные ошибки, возникающие в моем приложении Zend Framework. Я попытался вызвать register_shutdown_function из бутстрапа: protected function _initErrorHandler() { register_shutdown_function(array("My_ErrorHandler", 'shutdownHandler')); } Затем в My_ErrorHandler я написал функцию: <?php class My_ErrorHandler { static function shutdownHandler() { die('here'); } } Это не работает. Я попробовал то же самое с set_error_handler, и он работает. Однако […]

Обработка ошибок php foreach в функции

У меня есть функция, которая выполняет цикл foreach в массиве из базы данных. см. foreach ($teamarray AS $key => $value){$teamgo .= $value[1]." ".$value[2]."<br/>"; Проблема в том, что иногда не может быть набора данных, который вызывает ошибку, когда цикл попадает в это поле. Как я могу поймать / подавить эту ошибку? function GetUnsubmitted($coach){ $push .= "<div […]

Лучший способ обработки ошибок

Я надеялся, что вы, ребята, поможете мне в этом: как справляться с ошибками и что вернуться? То, что я делаю, большую часть времени, делает мои функции / методы возвращением двух возможных значений. Предполагаемое значение в случае успеха и FALSE в случае сбоя. Таким образом, я могу использовать: if(function()) { … } else { … } […]

Можно ли включить «Уведомление: попытка получить свойство не объекта» в фатальную ошибку?

Если переменная держит NULL в PHP, попытка получить доступ к свойству на ней приводит к уведомлению «Попытка получить свойство не-объекта». Однако, если попытка вызвать метод на нем, результатом является «Неустранимая ошибка: вызов функции – функции – члена () для не-объекта»: <?php $obj = NULL; var_dump($obj->prop); $obj->method(); http://codepad.org/HZyYd12A Есть ли способ заставить PHP обрабатывать обе эти […]

Не удалось подключиться к базе данных: доступ запрещен для пользователя '' @ 'localhost' в базу данных 'socialdb'

Я видел несколько таких ошибок, но я не нашел ответа. Unable to connect to database: Access denied for user ''@'localhost' to database 'socialdb' socialdb – моя база данных. Здесь находится часть «Невозможно подключиться к базе данных:». $db = mysql_select_db("socialdb",$con); if(!$db) { die ('Unable to connect to database: ' . mysql_error()); } Я не знаю, что […]

Есть ли способ кодирования сообщений об ошибках в PHP

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