Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Arrays mit Objekten als PHP-Quellcode ausgeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Arrays mit Objekten als PHP-Quellcode ausgeben

    So manchmal besteht der Wunsch, Arrays die auch Objekte vom Typ stdClass enthalten, als PHP-Quellcode zu exportieren. Die folgende Funktion hilft da var_export etwas nach:
    PHP-Code:
    function dump_arrobj($arrobj){
      echo 
    '<pre>'.str_ireplace('stdClass::__set_state','(object)',var_export($arrobj,true)).'</pre>';

    Für ein Beispiel klaue ich mal was aktuelles von hausl

    PHP-Code:
    // beispiele anlegen
    $obj1 = new stdClass();
    $obj1->id 12;
    $obj1->spielername "Lumpi";
    $obj1->allianz "23";

    $obj2 = new stdClass();
    $obj2->id 18;
    $obj2->spielername "vegador";
    $obj2->allianz "23";

    $arr = array();
    $arr[] = $obj1;
    $arr[] = $obj2;

    //PHP-Code ausgeben
    dump_arrobj($arr); 
    Ausgabe:
    PHP-Code:
    array (
      
    => 
      (object)(array(
         
    'id' => 12,
         
    'spielername' => 'Lumpi',
         
    'allianz' => '23',
      )),
      
    => 
      (object)(array(
         
    'id' => 18,
         
    'spielername' => 'vegador',
         
    'allianz' => '23',
      )),

    Eine Variable und = davorgesetzt und ein Semikolon am Ende, und schon kann dies in einem Skript zum Testen benutzt werden oder auch in ein Forum wie dieses gestellt werden.

    LG + schonmal ein schönes Wochenende
    jspit

  • #2
    stimmt, danke

    Kommentar


    • #3
      Ich schlage vor daraus ein Repository-Eintrag zu machen, jspit. Andernfalls wird der Beitrag hier sehr schnell vergessen.

      Kommentar


      • #4
        Ich schlage vor daraus ein Repository-Eintrag zu machen, jspit
        jspit hat immer wieder mal den einen oder anderen praktischen Schnipsel, ich hab mir schon mal überlegt da eine "Snippets-Sammlung" in der PHP-Wissenssammlung dazu auf github zu machen damit bzw. hätten wir schon sogar die Kateg, die passen würde mit den Implementierungsansätzen/Beispielen. Aber hast recht, das kann er ja auch selbst

        tr0y, meintest du das so? Sonst kann ich mich dem auch annehmen wenn zwischendurch mal Zeit ist die "einzufplegen". Gebt einfach mal laut dazu, gerne könne wir sonst auch per PN weiterquatschen.

        LG

        Kommentar


        • #5
          Jup.

          Kommentar


          • #6
            Da verweise ich mal lachend auf unsere Tutorials-Sektion.

            Kommentar


            • #7
              Zitat von nikosch Beitrag anzeigen
              Da verweise ich mal lachend auf unsere Tutorials-Sektion.
              Ich kriege Lachflashs wenn ich da das ein oder andere Tutorial sehe.. jo

              Kommentar


              • #8
                Die sind aber tw. auch 6-8 Jahre alt.

                Kommentar


                • #9
                  Die Idee mit Github finde ich Prima!

                  Kommentar


                  • #10
                    Hi,
                    mein primäres Anliegen beim Posten dieser Funktion war dies als Link hier im Forum benutzen zu können,
                    damit dies anstelle von den blöden print_r Ausgaben bei entsprechenden Problemstellungen genutzt werden kann.
                    Die Idee mit dem str_replace ist nicht neu und auch im Netz schon zu finden.
                    Ich selbst nutze die Funktion so nicht, da ich dies in meine Debug-Klasse eingebaut habe (Version ist noch nicht als Download verfügbar).
                    In dieser Debug-Klasse strebe ich an, bei einer Ausgabe die Variablen und Objekte nach Möglichkeit als PHP-Quellcode verfügbar zu haben.
                    So gesehen, geht hier nichts verloren. Github zu nutzen, darüber werde ich noch nachdenken.
                    Ein positiver Nebeneffekt für mich ist noch, daß in einem Forum der Code von vielen Augen kritisch betrachtet wird.

                    LG jspit

                    Kommentar


                    • #11
                      Beistrag ist nun auch in der Wissenssammlung, danke jspit!

                      http://php-de.github.io/jumpto/objectsarray-to-code/

                      LG

                      Kommentar

                      Lädt...
                      X