|
0 Всего найдено: 10
JohnTravolta
Сообщение
23/04/2011 21:41
Копия темы
php Перехватить ошибки День добрый. Подскажите как грамотно сделать перехват ошибок. В частности неизвестных. Чтобы сайт не умирал от того, что какой-то юзер загрузил битую фотку, например, а при сжатии в миниатюру идёт ошибка в браузер. Можно ли что-то сделать с ошибкой выделения памяти?
1site
Сообщение
23/04/2011 21:51
Копия темы
Можно, конечно. Разными методами. Но чистый перехват ошибок совершается функцией "set_error_handler"
XyZ
Сообщение
24/04/2011 04:49
Копия темы
Чаще всего, необходимо предотвращать появление ошибок, а не перехватывать их. В т.ч. и в примере, приведенном вами.
TakoY
Сообщение
24/04/2011 07:36
Копия темы
При загрузке файлов, в скрипте можно определять все параметры, а именно обьем, размеры, формат Нужно писать скрипты так, что бы исключались любые возможности ошибок Если нет возможности все переписывать, вы можете вообще скрыть отображение ошибок в файле .htaccess php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off в php коде (до вывода на экран) error_reporting(0); ini_set("display_errors", 0); эти директивы так же позволюят настраивать какие типы ошибок можно выводить а какие нет в данном положении все ошибки будут выключенны
Siggrid
Сообщение
24/04/2011 08:09
Копия темы
try { // ресайзим картинку } catch (Exception $e) { // обрабатываем исключения }
idle
Сообщение
24/04/2011 08:14
Копия темы
Не надо ничего перехватывать, как это потом отлаживать? Сделать что-бы ошибок не было, не вариант? С какой стати сайт должен умирать от фотки?
JohnTravolta
Сообщение
24/04/2011 08:37
Копия темы
В целом согласен, что код должен быть гениален и идеален. Если у вас так всегда получается, то вам тогда конечно не нужны никакие перехваты. У меня, к сожалению, так не получается. Поэтому хочется организовать некое действо, которое перехватит ошибку, запишет в лог (это я уже умею), и даст сайту дожить до того момента пока я не освобожусь (проснусь, вернусь через пару дней) и не пофиксю очередной баг.
RiDDi
Сообщение
24/04/2011 09:00
Копия темы
Вы считаете, что работоспособность сайта это гениальность и идеальность? ))) Или это шутка такая очередная про российский интернет? ))
TakoY
Сообщение
24/04/2011 11:29
Копия темы
наверно вам нужно вот это function my_error_handler($code, $msg, $file, $line) { // $code код ошибки // $msg сообщение // $file файл в котором ошибка // $line линия } set_error_handler('my_error_handler'); если произойдет ошибка тогда сработает функция my_error_handler и с помощью нее, вы можете полученные данные заносить в базу или в файл
JohnTravolta
Сообщение
24/04/2011 20:41
Копия темы
0
Спасибо. Пробую все варианты. Пока что остановился на try catch. Актуально это или нет не знаю, но всем участникам блога положительное отношение +. Если кому-то не лень выскажите своё мнение относительно хабростатьи по обработке исключений. |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |