phpbar.de logo

Mailinglisten-Archive

[php] assert()

[php] assert()

Hartmut Holzgraefe (_(at)_home) hartmut_(at)_six.de
Sat, 19 Aug 2000 22:16:06 +0200


Ulf Wendel wrote:
> ich frage mich warum Thies [Arntzen] assert() implementiert hat?
> Vielleicht, damit wir endlich try-catch-throw bekommen? 

da ich die Dokumentation verbrochen habe, versuche ich 
mal stellvertretend zu andworten

assert() entspricht in seiner Idee dem C-Macro assert()
aus assert.h und ist für reine Debugging-Zwecke gedacht,
deshalb git es auch einen ini-Parameter, um es abzuschalten

assert() soll dazu dienen, bestimmte Bedingungen zu
überprüfen, die *immer* wahr sein sollten und deren
nicht-Erfüllung auf einen Programmierfehler hindeutet

es ist nicht gedacht für Fehlerüberprüfung zur Laufzeit
wie z.B. nicht gefundene Dateien, da der Mechanismus
abgeschaltet bzw. bei C schon beim Compilieren ignoriert 
werden kann

ob es unter den etwas anderen Umständen in PHP sinnvoll
ist, assert() auch für normale Laufzeitprüfungen 
einzusetzen, kann ich nicht wirklich beurteilen, halte
ich persönlich aber für fraglich

auf jeden Fall dient assert() nicht dazu, PHP-Fehlermeldungen
abzufangen, es wertet einfach nur den übergebenen Ausdruck
aus und reagiert wie voreingestellt, wenn das Ergebnis
'false' ist


--
Harmut Holzgraefe        hartmut_(at)_six.de


php::bar PHP Wiki   -   Listenarchive