gpt4 book ai didi

PHP print_r 函数不嵌套打印的数组

转载 作者:行者123 更新时间:2023-12-02 06:49:27 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Make var_dump look pretty

(15 个回答)


6 个月前关闭。




我用了print_r函数打印从数据库中的表中获取的数组。而不是像这样格式良好的数组:

Array
(
[0] => Array
(
[id] => 1
[firstname] => Firstname one
[lastname] => Lastname one
)

[1] => Array
(
[id] => 2
[firstname] => Firstname two
[lastname] => Lastname two
)

[2] => Array
(
[id] => 3
[firstname] => Firstname three
[lastname] => Lastname three
)
)

我得到了内联结果,如下所示:
Array ([0] => Array ([id] => 1 [firstname] => Firstname one [lastname] => Lastname one ) [1] => Array ([id] => 2 [firstname] => Firstname two...

这是一个简单的例子,我的实际数组嵌套了 3 次,所以结果是一个巨大的内联字符串 block ,这使得可读性变得困难。

为什么我会得到这样的结果?

最佳答案

发生这种情况仅仅是因为您将纯文本直接打印到您的网页,它会自动重新格式化文本,幸运的是有一个解决方案。

以下代码将“漂亮地打印”您的 PHP 数组。

echo "<pre>".print_r($array, true)."</pre>";

The HTML <pre> tag is used for indicating preformatted text. The code tag surrounds the code being marked up.

https://www.tutorialspoint.com/html/html_pre_tag.htm


print_r()的第二个参数告诉函数捕获 print_r() 的输出而不是将其打印为纯文本。 Learn more on the PHP docs .

这两种方法放在一起使输出“美化”。

dognose 所述在评论中,如果您不想使用 <pre>无论出于何种原因,您都可以简单地查看您正在处理的页面的源代码,它会以“漂亮”的方式显示数组。

dognose 发布的示例:
enter image description here

功能

我写了一个 pretty-print 功能,可以让你更容易地做到这一点......
function print_p($arr) {
return "<pre>".print_r($arr, true)."</pre>";
}

这可以节省您每次输入预标签的大量时间/精力。用法:
echo print_p($array);

关于PHP print_r 函数不嵌套打印的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48531045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com