2011-01-10 22 views

Antwort

6

Wenn Sie Es macht Spaß, es in Javascript zu tun, moderne Varianten von JSON.stringify haben ein optionales Argument, das die Anzahl der Leerzeichen festlegt, mit denen gedruckt werden soll. Zum Beispiel anhand eines Beispiels Objekt von dieser Seite:

var foo = {foundation: "Mozilla", model: "box", week: 45, transport: "car", month: 7}; 
console.log(JSON.stringify(foo, null, 4)); 

Diese Ausgänge:

{ 
    "foundation": "Mozilla", 
    "model": "box", 
    "week": 45, 
    "transport": "car", 
    "month": 7 
} 
+0

Aufruf als JSON.stringify (Objekt, null, '\ t'); es sieht wirklich gut aus – Tebe

1

nicht sicher, aber

print_r(json_decode($jsonStr)); 

die meisten der gleichen Informationen vermittelt, wenn Sie wirklich json müssen angezeigt werden soll.

Ab PHP 5.4 gibt es eine neue Flagge (JSON_PRETTY_PRINT) für json_encode

echo json_encode($data, JSON_PRETTY_PRINT); 
0

Wenn Sie nur versuchen, die JSO zu untersuchen N selbst Objekt zum Debuggen von

<?php 
    echo "<pre>" . print_r(json_decode($json_object_as_flat_string, true)) . "</pre>" 

oder in Firebug/Webkit-Konsole tun nur

console.log($json_data) 

Wenn Sie das Objekt in der HTML-Ausgabe angezeigt werden müssen, schauen Sie sich so etwas wie http://james.padolsey.com/javascript/prettyprint-for-javascript/

0

für Javascript, verwenden Sie die JSON-Bibliothek (json2.js) erhältlich bei http://www.json.org/js.html

müssen Ihre JSON gültig sein, aber es ist nur eine einfache Sache von:

JSON.stringify(JSON.parse(your_json_string), null, " "), wo das letzte Argument der String für Einbuchtung (2 Räume, in diesem Fall verwendet wird)

0

Ich benutze perltidy, es beschwert, aber es tut nichts weh, und es macht eine verstümmelte bis json viel schöner aussehen ... und die Hälfte der Zeit, die Sie haben bereits perltidy auf einer Maschine schon (schön, wenn man ohne privs jemand anderem Maschine laufen auf installieren)

perltidy -se myfile.json -o myfile-formatted.json 

Wenn Sie die err-Datei, die zeigt sich nicht mögen, da es nicht wirklich ein perl-Datei ist, wird. Dann können Sie einfach -se &> /dev/null an das Ende dieser hinzufügen, die perltidy mitteilen, Fehler auf stdout zu drucken, und alle Nachrichten nach/dev/null umzuleiten, damit Sie sie nicht sehen.

Verwandte Themen