打印没有 <pre> 标签的预格式化数组

Print pre formatted Array without <pre> tag

这是我的问题:

我想在我的网络服务器上输出一个格式化数组,如下所示:

{
    "status": true,
    "motd": "    [  Mineplex Games  ]    \n        \u2744 New Game \u2744 Gladiators \u2744",
    "version": "1.8",
    "players": {
        "online": 24410,
        "max": 24411
    },
    "ping": "0.039",
    "cache": 1450047242
}

该页面的源代码中没有 <pre> 标记,但我不知道如何在没有该标记的情况下重现该结果。

我该怎么做?这是我的代码

  echo '<pre>';
  print_r($array);
  echo '</pre>';

编辑:echo json_encode($array); 将输出非格式化文本,仅一行。

即JSON,试试echo json_encode($array);

edit:对于格式化结果,json_encode 采用第二个参数。

试试这个 echo json_encode($array, JSON_PRETTY_PRINT);

如果您只是想在元素之间添加换行符,您可以尝试:

echo implode("<br>", $array);

您可能想要设置 text/html 以外的 mime 类型。例如尝试 text/plain(当 html 与 <pre> 一起使用时会显示)或 application/json(json 的官方类型)

在 PHP 中,使用以下行:

header('Content-Type: application/json');
echo json_encode($array, JSON_PRETTY_PRINT);