问题

我正在建立一个PHP脚本,将JSON数据提供给另一个脚本.我的脚本将数据构建成一个大的关联数组,然后使用 json_encode 输出数据.以下是示例脚本:

$data = array('a' => 'apple', 'b' => 'banana', 'c' => 'catnip');
header('Content-type: text/javascript');
echo json_encode($data);

上述代码产生以下输出:

{"a":"apple","b":"banana","c":"catnip"}

这是伟大的,如果你有少量的数据,但我更喜欢这些行:

{
    "a": "apple",
    "b": "banana",
    "c": "catnip"
}

有没有办法做到这一点在PHP没有丑陋的黑客?看起来似乎有人在 Facebook 知道了.



解决方法

PHP 5.4提供了用于 json_encode()调用的 JSON_PRETTY_PRINT 选项.

http://php.net/manual/en/function.json- encode.php

<?php
...
$json_string = json_encode($data, JSON_PRETTY_PRINT);



相关问题推荐