Aar*_*Lee 110 php pretty-print
我正在修复一些PHP脚本,我错过了ruby的漂亮打印机.即
require 'pp'
arr = {:one => 1}
pp arr
Run Code Online (Sandbox Code Playgroud)
将输出{:one => 1}.这甚至适用于相当复杂的对象,并且更容易挖掘到未知脚本.有没有办法在PHP中复制此功能?
Joe*_*dez 158
这是我用来打印我的数组:
<pre>
<?php
print_r($your_array);
?>
</pre>
Run Code Online (Sandbox Code Playgroud)
魔术附带pre
标签.
And*_*ore 101
双方print_r()
并var_dump()
会输出可视化表示内PHP对象.
$arr = array('one' => 1);
print_r($arr);
var_dump($arr);
Run Code Online (Sandbox Code Playgroud)
Sea*_*ing 21
为简单起见,print_r()和var_dump()不能被击败.如果你想要一些有点发烧友或处理大型列表和/或深度嵌套数据的东西,Krumo将让你的生活更轻松 - 它为你提供了格式精美的折叠/扩展显示.
Gui*_*ier 21
我发现的最好的是:
echo "<pre>";
print_r($arr);
echo "</pre>";
Run Code Online (Sandbox Code Playgroud)
如果你想要它更详细:
echo "<pre>";
var_dump($arr);
echo "</pre>";
Run Code Online (Sandbox Code Playgroud)
<pre>
在Web开发环境中添加HTML标记将\n
正确地遵循打印功能的换行符,而无需添加一些html<br>
小智 19
对于PHP,您可以轻松利用HTML和一些简单的递归代码来实现嵌套数组和对象的漂亮表示.
function pp($arr){
$retStr = '<ul>';
if (is_array($arr)){
foreach ($arr as $key=>$val){
if (is_array($val)){
$retStr .= '<li>' . $key . ' => ' . pp($val) . '</li>';
}else{
$retStr .= '<li>' . $key . ' => ' . $val . '</li>';
}
}
}
$retStr .= '</ul>';
return $retStr;
}
Run Code Online (Sandbox Code Playgroud)
这将打印数组作为嵌套HTML列表的列表.HTML和您的浏览器将处理缩进并使其清晰易读.
最好的方法是
echo "<pre>".print_r($array,true)."</pre>";
Run Code Online (Sandbox Code Playgroud)
例:
$array=array("foo"=>"999","bar"=>"888","poo"=>array("x"=>"111","y"=>"222","z"=>"333"));
echo "<pre>".print_r($array,true)."</pre>";
Run Code Online (Sandbox Code Playgroud)
结果:
数组
(
[foo] => 999
[bar] => 888
[poo] =>数组
(
[x] => 111
[y] => 222
[z] => 333
)
)
阅读有关print_r的更多信息.
关于print_r的第二个参数"true"来自文档:
当此参数设置为TRUE时,print_r()将返回信息而不是打印信息.
归档时间: |
|
查看次数: |
216369 次 |
最近记录: |