可能重复:
我正在编写一个创建JSON文件的脚本。现在,我只是使用json_encode
(PHP5.2.x)将一个数组编码成JSON输出。然后,我将返回值打印到一个文件中并保存。问题是客户机希望能够打开这些JSON文件以提高可读性,所以我想在其中添加换行符并“漂亮地打印”JSON输出。你有什么建议吗?我唯一能想到的其他选择就是根本不使用json_encode
,只需手动编写文件内容,并为每一行添加我自己的换行符。
下面是我得到的结果:
{"product_name":"prod1","val1":1,"val2":8}
这是我想要的:
{
"product_name":"prod1",
"val1":1,
"val2":8
}
我想我也可以将每个逗号替换为一个后跟\n的命令,括号也是如此...有什么想法?
发布于 2012-11-30 12:27:01
PHP自5.4.0 (发布日期为2012年3月01日)起提供了JSON_PRETTY_PRINT选项。
这应该可以完成这项工作:
$json = json_decode($string);
echo json_encode($json, JSON_PRETTY_PRINT);
请参阅http://www.php.net/manual/en/function.json-encode.php
注意:如果要在HTML中打印以保留格式,请不要忘记在"“之前和"”之后回显;)
发布于 2011-08-18 02:12:28
嗯,使用print_r($array, true);
,$array = json_decode($json, true);
会让你的字符串成为一个易于打印的数组
但如果你真的想美化你的儿子..。Check this out
发布于 2011-11-05 03:39:13
这里有一个函数来美化你的json:pretty_json
https://stackoverflow.com/questions/7097374
复制相似问题