🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #220528

Re: newbie: error handler

#220528
From: cagret
Date: Sat, 12 Sep 2009 09:56
38 lines
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-mail
References: <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