Anzeige:
Ergebnis 1 bis 7 von 7

Thema: php & json_encode() - format

  1. #1
    Registrierter Benutzer
    Registriert seit
    30.10.2008
    Beiträge
    30

    php & json_encode() - format

    Hi Leute,
    gibt es eine Möglichkeit die Ausgabe der php-Funktion
    Code:
    json_encode( $string )
    zu verbessern!?

    Der Ausgabestring wird bei großem Umfang schnell unübersichtlich (ohne Zeilenumbruch und/oder Tabs)

    Besteht da eine Möglichkeit die Ausgabe z.B. wie im Wiki zu erzeugen?
    Analog zu wiki sähe meine Ausgabe so aus:
    Code:
    {"firstName":"John","lastName": "Smith","address": {"streetAddress":"21 2nd Street","city":"New York","state": "NY","postalCode": 10021},phoneNumbers":["212 555-1234","646 555-4567"]}
    Möchte aber folgendes:
    Code:
    {
         "firstName": "John",
         "lastName": "Smith",
         "address": {
             "streetAddress": "21 2nd Street",
             "city": "New York",
             "state": "NY",
             "postalCode": 10021
         },
         "phoneNumbers": [
             "212 555-1234",
             "646 555-4567"
         ]
     }
    Grüße,
    derJan

  2. #2
    Registrierter Benutzer Avatar von BLUESCREEN3D
    Registriert seit
    08.11.2002
    Beiträge
    665
    Eigentlich sollte es dir ja egal sein, da die Ausgabe nur von Programmen gelesen wird.

    Wenn du aber zu Debug-Zwecken eine andere Formatierung haben willst, musst du das wohl selbst machen. Z.B. mit einer Funktion, die den String Zeichen für Zeichen durchgeht und dabei einen neuen String zusammenstellt, in dem Zeilenumbrüche und Einrückung drin sind.

  3. #3
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Verwende das <pre> tag für die Ausgabe.
    Code:
    var_dump( "<pre>", json_encode( $string ), "</pre>" );
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  4. #4
    Registrierter Benutzer
    Registriert seit
    30.10.2008
    Beiträge
    30
    @undefined:

    ?Meintest du:
    Code:
    var_dump( "<pre>" . json_encode( $string ) . "</pre>" );
    Mhhh,
    hat keinen wirklichen Effekt.
    ------------------
    Eigentlich sollte es dir ja egal sein, da die Ausgabe nur von Programmen gelesen wird.
    Stimmt auch nu wieder...

    Gute Alternative:
    Das Objekt was übertragen werden soll mit

    print_r()

    sich ausgeben lassen.


    Danke tropsdem!
    Grüße.

  5. #5
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Zitat Zitat von Ka55i0peia Beitrag anzeigen
    @undefined:

    ?Meintest du:
    Code:
    var_dump( "<pre>", json_encode( $string ), "</pre>" );
    Mhhh,
    hat keinen wirklichen Effekt.
    ------------------

    Stimmt auch nu wieder...

    Gute Alternative:
    Das Objekt was übertragen werden soll mit

    print_r()

    sich ausgeben lassen.


    Danke tropsdem!
    Grüße.
    Wenn du das ganze in ein Variable Speichern willst dann siehe ob_*
    PHP-Code:
    ob_start();
    var_dump"<pre>" json_encode$string ) . "</pre>" );
    $buffer ob_get_contents();
    ob_and_clean();
    echo 
    $buffer
    Das alles wird dir aber auch nicht viel nützen weil JavaScript je nach Browser Probleme mit den Zeilen Umbrüchen bekommt.
    Geändert von undefined (08-12-2008 um 16:49 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  6. #6
    Registrierter Benutzer Avatar von BLUESCREEN3D
    Registriert seit
    08.11.2002
    Beiträge
    665
    Zitat Zitat von undefined Beitrag anzeigen
    Verwende das <pre> tag für die Ausgabe.
    Code:
    var_dump( "<pre>", json_encode( $string ), "</pre>" );
    Die Ausgabe von json_encode() enthält keine Zeilenwechsel usw. Deshalb kann man da auch nichts sichtbar machen.

  7. #7
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Dann dürfte ja seit Jahren mein Debugger nicht funktionieren
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •