echo unterdrücken oder Überladen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • echo unterdrücken oder Überladen

    Hallo Leute,

    ich hätte zwei Fragen:

    1. Gibt es eine Möglichkeit die Ausgabe von echo zu unterdrücken, dass man die "Diagnose"-Ausgaben nicht jedes mal auskommentieren muss?

    oder

    2. ist es möglich echo in irgendeiner Forum zu überladen und statt der Ausgabe das ganze in ein Array oder ähnliches zu schreiben.

    Danke für die Hilfe

    Gruß Tarlar

  • #2
    ob_start

    Comment


    • #3
      Originally posted by Tarlar View Post
      1. Gibt es eine Möglichkeit die Ausgabe von echo zu unterdrücken, dass man die "Diagnose"-Ausgaben nicht jedes mal auskommentieren muss?
      Debugging mit "echo" ist aber auch mal so richtig PHP 3 Da gibt es eine ganze Reihe Alternativen.
      [FONT="Helvetica"]twitter.com/unset[/FONT]

      Shitstorm Podcast – Wöchentliches Auskotzen

      Comment


      • #4
        Hier mal ein kurzes Beispiel, weil ich grad Zeit hatte...

        PHP Code:
        <?php

        $my_output 
        = array();

        function 
        write_to_my_output($stuff) {
          global 
        $my_output;
          
        $my_output[] = array(
            
        'time'  => date('d.m.Y H:i:s'time()),
            
        'data'  => $stuff
          
        );
          return(
        null);
        }

        ob_start('write_to_my_output'2);

        echo(
        'Hallo Welt!');
        echo(
        'Und noch eine Ausgabe...');
        echo(
        'Blubb?');

        ob_end_clean();

        echo(
        '<pre>'.print_r($my_outputtrue).'</pre>');

        ?>

        Comment


        • #5
          Und Global ist genau so PHP 3.
          [FONT="Helvetica"]twitter.com/unset[/FONT]

          Shitstorm Podcast – Wöchentliches Auskotzen

          Comment


          • #6
            Originally posted by unset View Post
            Und Global ist genau so PHP 3.
            Passt doch dann prima zusammen...

            Aber Scherz beiseite: Mal angenommen du müsstest aus einer Callback Funktion heraus (sprich vordefinierte Parameter) Daten für die spätere Verwendung sichern, was würdest du nehmen, wenn nicht global?

            Comment


            • #7
              Originally posted by DSitC View Post
              Mal angenommen du müsstest aus einer Callback Funktion heraus (sprich vordefinierte Parameter) Daten für die spätere Verwendung sichern, was würdest du nehmen, wenn nicht global?
              Klassen
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Comment


              • #8
                Ok, also dann eine Debugging Klasse die man über statische Aufrufe füttert.

                Comment


                • #9
                  Nein, ich würde dafür auch keine statische Klasse nehmen, sondern das Observer-Pattern implementieren.
                  Last edited by AmicaNoctis; 01-03-2010, 13:14.
                  [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                  Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                  Super, danke!
                  [/COLOR]

                  Comment


                  • #10
                    Originally posted by DSitC View Post
                    Passt doch dann prima zusammen...

                    Aber Scherz beiseite: Mal angenommen du müsstest aus einer Callback Funktion heraus (sprich vordefinierte Parameter) Daten für die spätere Verwendung sichern, was würdest du nehmen, wenn nicht global?
                    Erstmal ist es ja schon Error by design, wenn man die Ausgabe so fließen lässt, dass man sie nicht mehr kontrollieren kann. Deswegen werde ich hier vor einer Lösung erst einmal auf den Missstand hinweisen. Der Autor hat ja nicht gesagt, dass es nicht mehr möglich ist, denn Quellcode anzupassen. Und selbst wenn: Eine Lösung ist nur ein Search & Replace mit einem kleinen RegExp entfernt.
                    [FONT="Helvetica"]twitter.com/unset[/FONT]

                    Shitstorm Podcast – Wöchentliches Auskotzen

                    Comment


                    • #11
                      Wenn du kein echo willst warum machst du dann eins??

                      Comment


                      • #12
                        Wurde doch gesagt: Debug-Ausgaben!
                        [FONT="Helvetica"]twitter.com/unset[/FONT]

                        Shitstorm Podcast – Wöchentliches Auskotzen

                        Comment


                        • #13
                          Debug-Ausgaben sollte man aber nur dann machen, wenn man sie braucht und sie dann wieder deaktivieren/entfernen.

                          Comment


                          • #14
                            Danke für die Tipps. Ich werde mal die verschiedenen Debug-Tools verwenden.

                            Comment

                            Working...
                            X