有适合PHP或JavaScript的JSON格式化程序库吗?
在我自己编写一个之前,我想知道是否有一个库,用于PHP或JavaScript,可以获取一行JSON字符串,并使用制表符和换行符对其进行格式化,以便易于阅读 以下是一个在线工具,可实现此功能: 我只需要格式化字符串,不需要验证。不确定,但是有适合PHP或JavaScript的JSON格式化程序库吗?,php,javascript,json,Php,Javascript,Json,在我自己编写一个之前,我想知道是否有一个库,用于PHP或JavaScript,可以获取一行JSON字符串,并使用制表符和换行符对其进行格式化,以便易于阅读 以下是一个在线工具,可实现此功能: 我只需要格式化字符串,不需要验证。不确定,但是 print_r(json_decode($jsonStr)); 除非您真的需要显示json,否则会传递大部分相同的信息 从PHP5.4开始,有一个新的标志(JSON_PRETTY_PRINT)用于 PHP手册中有一个简单的格式化函数: 如果您想要PHP中最
print_r(json_decode($jsonStr));
除非您真的需要显示json,否则会传递大部分相同的信息
从PHP5.4开始,有一个新的标志(JSON_PRETTY_PRINT)用于
PHP手册中有一个简单的格式化函数:
如果您想要PHP中最好的JSON漂亮打印机,请使用:
$json = escapeshellcmd($json);
$json = `echo '$json' | python -m json.tool`;
如果您只是尝试检查JSON对象本身以进行调试
<?php
echo "<pre>" . print_r(json_decode( $json_object_as_flat_string, true )) . "</pre>"
如果需要在HTML输出中显示对象,请查看以下内容
如果您乐于使用Javascript,那么现代的各种类型都有一个可选参数,用于设置要打印的空格数。例如,使用该页面中的示例对象:
{
"foundation": "Mozilla",
"model": "box",
"week": 45,
"transport": "car",
"month": 7
}
这将产生:
$json = json_encode($myData);
echo Zend_Json::prettyPrint($json, array("indent" => " "));
对于Javascript,请使用JSON库(json2.js),该库位于 您的JSON必须有效,但这只是一个简单的问题:
JSON.stringify(JSON.parse(您的_JSON_字符串),null,”
,其中最后一个参数是用于缩进的字符串(本例中为2个空格)我最近使用了一个:
试试\Zend_Json::prettyPrint()
我使用perltidy,它确实会抱怨,但它不会伤害任何东西,而且它让乱七八糟的json看起来更好。。。有一半的时间你已经在一台机器上安装了perltidy(当你在另一台没有安装Priv的机器上运行时很好) 如果您不喜欢显示.ERR文件,因为它实际上不是一个perl文件,那么将显示它。然后,您只需在末尾添加
-se&>/dev/null
,它告诉perltidy将错误打印到stdout,并将任何消息重定向到/dev/null,这样您就不会看到它们了。以JSON.stringify(object,null,'\t')的形式调用;让它看起来很漂亮
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
}
$json = json_encode($myData);
echo Zend_Json::prettyPrint($json, array("indent" => " "));
perltidy -se myfile.json -o myfile-formatted.json