当前位置: 首页 > 面试题库 >

PHP“漂亮打印” json_encode

易弘阔
2023-03-14
问题内容

我正在创建一个JSON文件的脚本。现在,我只是使用json_encode(PHP
5.2.x)将数组编码为JSON输出。然后,我将返回值打印到文件中并保存。问题是客户端希望能够打开这些JSON文件以提高可读性,因此我想在其中添加换行符并“漂亮打印”
JSON输出。有关如何执行此操作的任何想法?我唯一可以看到的替代方法是完全不使用json_encode,而只是手动写入文件内容,并为每行添加自己的换行符。

这是我得到的:

{"product_name":"prod1","val1":1,"val2":8}

这就是我想要的:

{
  "product_name":"prod1",
  "val1":1,
  "val2":8
}

我想我也可以用命令后跟\ n替换每个逗号,括号也一样。。。


问题答案:

自5.4.0起(发布日期为2012年3月1日),PHP具有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打印它以保留格式,请不要在它之前回显“ <pre>”和在其后显“ </ pre>”;)



 类似资料:
  • 问题内容: 我正在构建一个PHP脚本,该脚本将JSON数据提供给另一个脚本。我的脚本将数据构建到一个大的关联数组中,然后使用来输出数据。这是一个示例脚本: 上面的代码产生以下输出: 如果您的数据量很少,那就太好了,但是我希望遵循以下几点: 有没有办法在PHP中做到这一点而又没有丑陋的破解?似乎有人在Facebook上找到了答案。 问题答案: PHP 5.4提供了用于调用的选项。 http://ph

  • 问题内容: 我使用PHP中的DOM扩展来构建一些HTML文档,并且我希望输出的格式正确(带有新行和缩进),以便从我做过的许多测试中都可以读取: “ formatOutput = true”对saveHTML()完全不起作用,仅对saveXML()起作用 即使我使用saveXML(),它也仅适用于通过DOM创建的元素,而不适用于loadHTML()包含的元素,即使使用“ preserveWhiteS

  • 下面是我的例子: 如何为JSONARRAY启用漂亮的打印? 我认为这足以解释我的问题,但是这里有一些bla bla bla bla bla bla因为stackoverflow问我更多的细节,让我发布问题。

  • 问题内容: 如果有人对JSON的打印非常了解,那么我将不胜感激! 我正在使用以下功能将JSON字符串移动到文件中,以将复杂的python字符串转换为JSON格式: 问题是我遇到了方括号的语法错误,因为这对我来说是个新话题,我不知道该如何解决。我需要的JSON格式如下: 我正在使用Google Visualization API,您可能对此比较熟悉,但是我需要动态图。上面的代码是API创建图形所需的

  • 问题内容: 我正在尝试使用javax.json API漂亮地打印json 我当前使用的代码如下: 我收到以下异常: 问题答案: 您应该使用JsonWriter而不是JsonGenerator。 替换这些行: 用这些:

  • 问题内容: 我有一个字符串,它表示要打印的非缩进XML。例如: 应该变成: 语法高亮不是必需的。为了解决该问题,我首先将XML转换为添加回车符和空格,然后使用pre标记输出XML。为了添加新行和空白,我编写了以下函数: 然后,我像这样调用该函数: 这对我来说很好用,但是当我编写上一个函数时,我认为必须有更好的方法。所以我的问题是,给定XML字符串以将其漂亮地打印在html页面中,您是否知道更好的方