我用老式的方式调试,error_log()
ing和var_dump
惯性导航与制导。我发现这是最有效的方法,我有几个包装函数来处理不同类型的数据,如error_log
对数组和对象进行加密可能会很痛苦。此外,使用print_r()
当它不在一个文件夹中时,它可能很难阅读<pre>
. 我有tj_log()
用于错误记录,以及tj()
用于显示输出(基本上以可呈现的方式显示任何数据类型或:
function tj( $code ) {
?>
<style>
.tj_debug { word-wrap: break-word; white-space: pre; text-align: left; position: relative; background-color: rgba(0, 0, 0, 0.8); font-size: 11px; color: #a1a1a1; margin: 10px; padding: 10px; margin: 0 auto; width: 80%; overflow: auto; -moz-box-shadow:0 10px 40px rgba(0, 0, 0, 0.75); -webkit-box-shadow:0 10px 40px rgba(0, 0, 0, 0.75); -moz-border-radius: 5px; -webkit-border-radius: 5px; text-shadow: none; }
</style>
<br /><pre class="tj_debug">
<?php
if ( is_null( $code ) || is_string($code) || is_int( $code ) || is_bool($code) || is_float( $code ) ) :
var_dump( $code );
else :
print_r( $code );
endif;
echo \'</pre><br />\';
}
function tj_log( $code ) {
if ( is_null( $code ) || is_string($code) || is_int( $code ) || is_bool($code) || is_float( $code ) ) :
$code = var_export( $code, true );
else :
$code = print_r( $code, true );
endif;
error_log( $code );
}
所以我就这么做:
tj( $current_user );
或者别的什么。