Article View: pl.comp.lang.php
Article #220528Re: newbie: error handler
From: cagret
Date: Sat, 12 Sep 2009 09:56
Date: Sat, 12 Sep 2009 09:56
38 lines
2413 bytes
2413 bytes
Tablica kodów błędów:
$error_types = array (
E_ERROR => 'E_ERROR',
E_WARNING => 'E_WARNING',
E_PARSE => 'E_PARSE',
E_NOTICE => 'E_NOTICE',
E_CORE_ERROR => 'E_CORE_ERROR',
E_CORE_WARNING => 'E_CORE_WARNING',
E_COMPILE_ERROR => 'E_COMPILE_ERROR',
E_COMPILE_WARNING => 'E_COMPILE_WARNING',
E_USER_ERROR => 'E_USER_ERROR',
E_USER_WARNING => 'E_USER_WARNING',
E_USER_NOTICE => 'E_USER_NOTICE',
E_STRICT => 'E_STRICT',
4096 => 'E_RECOVERABLE_ERROR', // since PHP 5.2.0
8192 => 'E_DEPRECATED', // since PHP 5.3.0
16384 => 'E_USER_DEPRECATED' // since PHP 5.3.0
);
Dla przykładu, jeżeli chcesz pozwolić na dalsze wykonywanie skryptu w
razie wystąpienia błędu typu E_NOTICE:
if ($errNo != E_NOTICE) exit('Poważny błąd, kończę wykonywanie
skryptu');
Jeżeli chcesz żeby php wyświetlał wszystkie możliwe błędy, ustaw
error_reporting na "-1":
error_reporting(-1);
zamiast:
error_reporting(E_ALL | E_STRICT | E_DEPRECATED ...)
Jeszcze jedna uwaga, jeżeli wystąpi poważny błąd i kończysz
wykonywanie skryptu, wyślij odpowiedni nagłówek http, aby poinformować
np. wyszukiwarkę google by nie indeksowało tej strony:
if (!headers_sent()) {
header('HTTP/1.0 503 Service Unavailable');
}
Technical Details
Message-ID:
<75bd214a-40ba-4fe1-a132-3a6484bab152@s39g2000yqj.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!s39g2000yqj.googlegroups.com!not-for-mailReferences:
<4c17.0000028b.4aa933b0@newsgate.onet.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!s39g2000yqj.googlegroups.com!not-for-mail From: cagret <cagret@gmail.com> Newsgroups: pl.comp.lang.php Subject: Re: newbie: error handler Date: Sat, 12 Sep 2009 02:56:37 -0700 (PDT) Organization: http://groups.google.com Lines: 40 Message-ID: <75bd214a-40ba-4fe1-a132-3a6484bab152@s39g2000yqj.googlegroups.com> References: <4c17.0000028b.4aa933b0@newsgate.onet.pl> NNTP-Posting-Host: 77.253.251.204 Mime-Version: 1.0 X-Trace: posting.google.com 1252749397 2033 127.0.0.1 (12 Sep 2009 09:56:37 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sat, 12 Sep 2009 09:56:37 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: s39g2000yqj.googlegroups.com; posting-host=77.253.251.204; posting-account=af5XAQoAAAByo8thtAIvB896kRVSXUXC User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/530.5 (KHTML, like Gecko) Chrome/2.0.172.43 Safari/530.5,gzip(gfe),gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit