Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Errorhandling & Debugging kombinieren?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Errorhandling & Debugging kombinieren?

    Hallo,

    ich hoffe, das Subject ist nicht völlig irreführend.

    Ich habe zum Thema Errorhandling & Debugging folgende Frage an die Profis hier:

    Während der Entwicklung von Code behilft man sich ja öfters mit echo's und print_r's um zu sehen, ob alles wie erwartet läuft. Die werden bei Erfolg irgendwann entfernt. Soweit so gut.

    Aber auch bei fertigen Scripten möchte ich gerne - wenn etwas dann doch nicht so läuft - eine Möglichkeit haben, zu sehen, wo es klemmt etc.

    Ausserdenm würde ich gerne sowas wie ein "message-level" einbauen, mit dem man festlegen kann, wie granuliert das script messages ausgibt. z.B nur auf "Metaebene" ("connecte DB" ... "schreibe Datei") oder sehr genau ("connect: sende user"/"connect: sende pw"/"connect: ok").

    Der "verbose mode" wäre dann sozusagen der mode, in dem man auch entwickelt, der "silence" wäre gänzlich ohne Meldungen und "meta" würde die einzelnen wesentlichen Schritte als "Milestones" ausgeben.

    Bisher mache ich das so, dass ich statt echo und print_r zwei user funktionen aufrufe und diese dann eine von mir gesetzte Variable auswerten, um - ebenfalls per echo oder print_r - die Werte auszugeben oder eben nicht.

    Das würde ich gerne verfeinern, und zwar so, dass ich die Ausgabe auch in eine einzelne Datei umleiten kann, die ggf, sogar hochgezählt wird oder das Ergebnis in eine Logdatei "dumpe".

    Dazu "sammle" ich die Messages nun in einem Array, um dieses zum Schlus dann entweder weiter zu verwerten oder eben zu verwerfen.

    Leider hat diese Methode den Nachteil, dass ich auch "Zwischenmeldungen" nur bekomme, wenn das script erfolgreich durchlief. Kommen Fehler, so weiss ich nicht, was vorher alles ok ging.

    Nun meine Frage:

    Gibt es die Möglichkeit, PHP zu sagen, dass ein Fehler/Notice/Warning etc. dazu führen soll, eine von mir bestimmte Funktion aufzurufen, welcher der Fehler als Text übergeben wird (so, wie er normalerweise ausgegeben würde)?

    Denn dann könnte ich in dieser Funktion zuerst die gesammelten Daten ausgeben und dann den Fehler.

    Oder gibt's vielleicht noch bessere Methoden?

    Danke im Voraus
    jwka

  • #2
    Als
    Erfahrener Benutzer
    solltest Du eigentlich mal selbst im Manual das Thema Fehlerverarbeitung aufschlagen können. Ja, gibts.

    Kommentar


    • #3
      Komplett blind. Mein Fehler. Hatte bei der Eingabe im Suchfeld einfach Mist gebaut.

      Ich schliesse das mal ... schäm.

      Sorry!
      jwka

      Kommentar


      • #4
        Schäm Dir.

        Kommentar

        Lädt...
        X