[PHP] Stellenwert von Notice fehlermeldungen?

Aloha
Ich bin ja eher der praktische PHP-Programmierer ( also kein Plan von der Therorie )
und nun bin ich gerade dabei eine Software zuprogrammieren die auch Geld einspielen soll

Um Fehlermeldungen besser überwachen zukönnen habe ich

error_reporting(E_ALL); benutzt

Dabei bekomme ich auch die Notice Meldungen wie z.b. dieses Deklarationsfehler heir:

Nun wollte ich fragen wie wichtig es ist diese Fehler auszuschalten ( bzw zuverhindern) ( script performance, siriösität blabla )

Hoffe auf ne Schnelle und Fachmännsiche Antwort

lg michi

Also ich find’, auch solche Sachen sollte man ausbauen.
Sonst kann es irgendwann, irgendwie immer mal passieren, dass dein Script plötzlich mal nicht das tut, was du erwartest - weil bspw. irgendein Wert, dessen Nicht-Vorhandensein bisher einfach ignoriert wurde, dann trotzdem mal vorhanden ist (und damit das Script vor die Wand fährt), oder ähnliches … konkrete Beispiele sind zwar jetzt etwas schwer zu konstruieren - aber auf der Basis von “hinterher ist man immer schlauer” würd’ ich kein Script aufbauen wollen.

Gerade Software, “die auch Geld einspielen soll”, sollte, nein, muss sogar komplett sauber sein.
Es könnte sonst sehr leicht passieren, dass Dir der Kunde das Programm (zu Rech) um die Ohren haut und sein Geld zurückhaben will.

Speziell Deinen Fehler solltest Du ohnehin bereinigen, da dieser ein Stabilitäts- und ggf. auch ein Sicherheitsproblem darstellen kann: php-fehlermeldungen.de/topic32.html

Abschließend: ich selber nutze auch error_reporting(E_ALL); - aber nicht nur beim Entwickeln.
Auch im Live-Gang ist und bleibt error_reporting komplett eingeschaltet.
Das erzeugt zwar mitunter Meldungen, aber ich habe dann eher die Möglichkeit zu reagieren, als wenn eine Warnung einfach “verschluckt” wird.
Bei sicherheitskritischen Problemen ist auch nichts anderes zu verantworten.

oki danke :slight_smile:, dann wert ich mal gucken wie ich die einzelenen fehler umgehe/repaiere

[quote]
Abschließend: ich selber nutze auch error_reporting(E_ALL); - aber nicht nur beim Entwickeln.
Auch im Live-Gang ist und bleibt error_reporting komplett eingeschaltet.
Das erzeugt zwar mitunter Meldungen, aber ich habe dann eher die Möglichkeit zu reagieren, als wenn eine Warnung einfach “verschluckt” wird.
Bei sicherheitskritischen Problemen ist auch nichts anderes zu verantworten.[/quote]
Hab ich als “Debugmodus” mit $_GET[‘debug’] bei mir eingefügt, sprich man kann immer bei allen Scripten nochmal prüfen ob alles tut :slight_smile:

Zu nächsten 2 Punkten der mich noch Brennend interessieren:

hat jmd von euch erfahrung mit ob_start(); ? Und weiß wie ich es richtig einsetze?
und ob es überhaupt was bringt…

und ist es sinnvoll lange arrays nach deren benutzung NULL zusetzen? So das sie keinen mehr Inhalt haben? ( Wenn ich die arrays nicht mehr brauche, aber noch ein haufen script abgearbeitet werden muss )

vielen dank schonmal Michi

[quote]hat jmd von euch erfahrung mit ob_start(); ? Und weiß wie ich es richtig einsetze?
und ob es überhaupt was bringt…[/quote]
ob_start bringt nur etwas wenn du entweder auf templates verzichtest und damit höchst unsauber programmierst oder die Ausgabe gz-Komprimierst, was bei kleineren Seiten wenig Zweck hat :wink:

ob_start kann man auch gut verwenden, wenn man Bilder direkt
per Pseudoprotokoll data: in (X)HTML einbetten will, da man die
Ausgabe da meist erst durch base64 durchlaufen lassen will.

Ansonsten kann es auch schon mal sein, daß man erst einen
Inhaltsblock erzeugen will, dann etwas anderes machen, was sich
daraus ergibt und dann erst den Block ausgeben möchte.

Das kommt bei (X)HTML-Ausgaben alles in der Tat eher selten
vor, bei Graphik ist dies und ähnliches (wie die GD-Funktionen,
die die Graphik auch erst in einem Speicher schreiben und nicht
einzeln ausgeben) und auch Komprimierung ein durchaus
auftretendes Problem, wo das ob_start recht hilfreich sein kann.

Auf meinen Seiten gibt es da einige Beispiele, auch hinsichtlich
Komprimierung (von SVG).