am 10. Juni 2010
Mal wieder ein konfuser Titel, von dem nur ich weiß, was er zu bedeuten hat. Aber eigentlich ist es ganz einfach. Es geht um die Error-Level, die man so einstellen kann. Natürlich würde mir jeder zustimmen, wenn ich sagen würde, stellt es auf E_STRICT ein, damit euch auch die potentiellen Fehlerquellen angezeigt werden.
Wenn ich ehrlich bin, dann nerven mich viele NOTICES, die angezeigt werden, wenn man E_STRICT anzeigt und immer zu prüfen, ob ein Array auch existiert, wenn ich ihn auf leer prüfen will, geht mir auch auf den Sack. Man denkt ja auch, dass man diese Abfrage nicht braucht, denn wenn man nicht ganz so strikt prüft, dann geht’s ja auch.
Worauf ich hinaus will. Oft hat man das Gefühl, man muss mehr Code schreiben, damit man E_STRICT zufrieden stellt. Und meist bedeutet zusätzlicher auch, dass das System langsamer wird. Das ist aber ein Trugschluss – wie ich bei der PHP Conference gelernt habe. Auch wenn ich meinen Errorlevel so eingestellt habe, dass ich NOTICES nicht anzeigen lasse, dann werden diese „Fehler“ ja trotzdem geworfen. Aber eben nicht angezeigt. Das Finden und Ausgaben dieses Fehlers ist dann oft teurer, als die tatsächliche Prüfung im Source-Code, so dass die Notice gar nicht mehr angezeigt wird.
Joa soviel dazu. Leider habe ich im Laufe meines Lebens an so vielen Projekten gearbeitet, bei denen sich gar nicht die Frage stellt, ob man Notices angezeigt bekommt, denn sonst würde das System durchdrehen und so viel um sich werfen, dass man lieber in Deckung geht.