在我自己編寫代碼之前,我想知道是否有一個庫,PHP或JavaScript可以採用單行JSON字符串並使用製表符和換行符進行格式設置,因此很容易閱讀。是否有一個用於PHP或Javascript的良好JSON格式化程序庫?
這是一個在線工具,做的:http://www.jsonlint.com/
我只需要格式化字符串,不需要驗證。
謝謝!
在我自己編寫代碼之前,我想知道是否有一個庫,PHP或JavaScript可以採用單行JSON字符串並使用製表符和換行符進行格式設置,因此很容易閱讀。是否有一個用於PHP或Javascript的良好JSON格式化程序庫?
這是一個在線工具,做的:http://www.jsonlint.com/
我只需要格式化字符串,不需要驗證。
謝謝!
如果您'很高興在Javascript中做到這一點,JSON.stringify
的現代品種有一個可選的參數,它可以設置漂亮打印的空間數量。例如,使用一個例子對象從該網頁:
var foo = {foundation: "Mozilla", model: "box", week: 45, transport: "car", month: 7};
console.log(JSON.stringify(foo, null, 4));
此輸出:
{
"foundation": "Mozilla",
"model": "box",
"week": 45,
"transport": "car",
"month": 7
}
不知道,但
print_r(json_decode($jsonStr));
傳達了許多相同的信息,除非你真的需要顯示JSON。
隨着PHP 5.4的,有一個爲json_encode
echo json_encode($data, JSON_PRETTY_PRINT);
一個新的標誌(JSON_PRETTY_PRINT)有一個在PHP手冊簡單的格式化功能:
http://www.php.net/manual/en/function.json-encode.php#80339
如果你想要最好的JSON漂亮 - 打印機可在PHP中使用,然後使用:
$json = escapeshellcmd($json);
$json = `echo '$json' | python -m json.tool`;
如果您只是試圖檢查JSO n對象本身進行調試
<?php
echo "<pre>" . print_r(json_decode($json_object_as_flat_string, true)) . "</pre>"
或螢火蟲/ WebKit的控制檯只是做
console.log($json_data)
如果你需要顯示在HTML輸出對象,考察一下 http://james.padolsey.com/javascript/prettyprint-for-javascript/
爲JavaScript,使用JSON庫(json2。JS)可在http://www.json.org/js.html
你的JSON必須是有效的,但它只是一個簡單的問題:
JSON.stringify(JSON.parse(your_json_string), null, " ")
,其中最後一個參數是用來縮進(2位字符串,在這種情況下)
這裏有一個我最近使用:
嘗試\ Zend_Json :: prettyPrint();
$json = json_encode($myData);
echo Zend_Json::prettyPrint($json, array("indent" => " "));
http://framework.zend.com/manual/en/zend.json.basics.html#zend.json.basics.prettyprint
我用perltidy,它不抱怨,但它不傷害任何東西,它使一個亂碼了JSON看很多漂亮...和一半的時候,你已經有一臺機器上perltidy已經(不錯,當你別人的機器上運行,沒有PRIVS安裝)
perltidy -se myfile.json -o myfile-formatted.json
如果你不喜歡.ERR文件顯示出來這是自它實際上不是一個Perl文件,會的。然後你可以在-se &> /dev/null
的末尾添加-se &> /dev/null
,它告訴perltidy將錯誤打印到stdout,並將任何消息重定向到/ dev/null,這樣你就不會看到它們。
調用JSON.stringify(object,null,'\ t');使它看起來非常好 – Tebe 2017-07-31 12:50:16