如何使服务器标头的输出更具可读性?

发布于 2024-10-31 11:07:55 字数 175 浏览 4 评论 0原文

给定以下 php5 代码,该代码输出大量难以阅读的代码:

<?=var_dump($_SERVER);?>
<?=print_r($GLOBALS); ?>

问题:如何使输出更易于人类阅读?例如,如何将每个“项目”放在新行上?

Given the following php5 code that output a gigantuous amount of difficult to read code:

<?=var_dump($_SERVER);?>
<?=print_r($GLOBALS); ?>

Question: how to make the output more human-readable? e.g. houw to but every "item" on a new line?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

因为看清所以看轻 2024-11-07 11:07:55

您可以只在其周围包裹一个前置元素:

<pre><?php var_dump($_SERVER); ?></pre>
<pre><?php print_r($GLOBALS); ?></pre>

另请注意,要求将 short_open_tags 设置为 true(在较新版本的 php 中为 false)

You can just wrap a pre-element around it:

<pre><?php var_dump($_SERVER); ?></pre>
<pre><?php print_r($GLOBALS); ?></pre>

Also note that <?= requires short_open_tags to be set to true (which is false in newer versions of php)

终难遇 2024-11-07 11:07:55

在您的开发环境中,您应该安装 Xdebug 扩展。

除了其他有用的功能(例如调试器!),它会让您更好var_dump()

  • 颜色
  • 格式化

例如,这是我为 var_dump($_SERVER); 获得的输出开始的屏幕截图

:    
(来源:pascal-martin.fr

On your development environment, you should install the Xdebug extension.

Amongst other useful features (such as a debugger !), it'll get you nicer var_dump() :

  • colors
  • formating

For example, here's a screenshot of the beggining of the output I get for var_dump($_SERVER); :

     
(source: pascal-martin.fr)

巷雨优美回忆 2024-11-07 11:07:55

您可以使用

 标签来格式化输出

<pre><?=print_r($GLOBALS); ?></pre>

You can use <pre> tag to format the output

<pre><?=print_r($GLOBALS); ?></pre>
秋凉 2024-11-07 11:07:55

与其他人提到的一样,您可以将其包装在

 标记中以使其可读。我的代码中通常始终包含以下两个函数。用作实用函数,灵感来自蛋糕。

function pr() {
    $vars   = func_get_args();
    echo '<pre>';
    foreach ($vars as $var) {
        print_r($var);
    }
    echo '</pre>';
}

function prd() { //dies after print
    $vars   = func_get_args();
    echo '<pre>';
    foreach ($vars as $var) {
        print_r($var);
    }
    echo '</pre>';
    die();
}

Like everyone else mentioned, you can wrap that in <pre> tags to make it readable. I usually have the following 2 functions in my code at all times. Used as utility functions, inspired by cake.

function pr() {
    $vars   = func_get_args();
    echo '<pre>';
    foreach ($vars as $var) {
        print_r($var);
    }
    echo '</pre>';
}

function prd() { //dies after print
    $vars   = func_get_args();
    echo '<pre>';
    foreach ($vars as $var) {
        print_r($var);
    }
    echo '</pre>';
    die();
}
谁对谁错谁最难过 2024-11-07 11:07:55

除了

 技巧之外,您还可以尝试使用 dbug

让事情变得更好更清晰:错误

Apart from the <pre> trick, you can try using dbug

Makes things much nicer and clearer: dBug

热血少△年 2024-11-07 11:07:55

前面的答案提出了很好的解决方案,但是如果您想要对输出进行更多控制,您可以在数组上运行循环。

$_SERVER 和 $_GLOBALS 是数组,因此您

foreach($_SERVER as $key=>$value){
echo $key . ' is ' . $value . '<br />' . PHP_EOL;
}

也可以添加 if 语句来忽略 $_SERVER/$_GLOBALS 中的某些项目

the previous answers suggest good solution, but if you want more control on the output you can run a loop over the arrays.

$_SERVER and $_GLOBALS are arrays, so you can do

foreach($_SERVER as $key=>$value){
echo $key . ' is ' . $value . '<br />' . PHP_EOL;
}

you can also add if statements to ignore some items in $_SERVER/$_GLOBALS

怂人 2024-11-07 11:07:55
  1. 它不是任何“服务器标头”,而是常规数组。
  2. 为了输出数组内容,程序员通常使用循环,然后按照他们希望的方式格式化输出:

foreach($_SERVER as $key => $value){
  echo "<b>$key:</b> $value<br>\n";
}

请注意,您的输出之所以巨大只是因为您打印了 $GLOBALS 变量的内容,这对您来说完全无用。

  1. It's not whatever "server headers" but regular arrays.
  2. To output array contents, a programmer usually makes use of a loop, and then format output in the manner they wish:

.

foreach($_SERVER as $key => $value){
  echo "<b>$key:</b> $value<br>\n";
}

Note that your output being gigantic only because you're printing out the contents of $GLOBALS variable, which being completely useless for you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文