Php 递归日志记录

Php 递归日志记录,php,Php,我正在尝试使用我的记录器将变量转储到日志文件中。 我需要它在数组中写下数组。 你能解释一下怎么做吗?(我不知道如何传递数组其余部分的子数组,但这里是我想到的,它显然遗漏了一些东西) 谢谢 function logRec($param) { if(!isset($param)) return; foreach($param as $key=>$value) { if(is_array($value)) {

我正在尝试使用我的记录器将变量转储到日志文件中。 我需要它在数组中写下数组。 你能解释一下怎么做吗?(我不知道如何传递数组其余部分的子数组,但这里是我想到的,它显然遗漏了一些东西)

谢谢

function logRec($param)
{
    if(!isset($param))
        return;

    foreach($param as $key=>$value)
    {
        if(is_array($value))
        {
            echo "<b>nested array</b><br />";
            logRec(next($param));
        }
        else
        {   
            echo $param;
            return;
        }   
    }    
}   

$par = array("ABC","DEF",array("Apple","Peach","Melon",array("Cube","Sphere","Pyramid")));
logRec($par);
函数logRec($param)
{
如果(!isset($param))
返回;
foreach($param作为$key=>$value)
{
if(是_数组($value))
{
回显“嵌套数组
”; logRec(next($param)); } 其他的 { echo$param; 返回; } } } $par=阵列(“ABC”、“DEF”、阵列(“苹果”、“桃”、“瓜”、阵列(“立方体”、“球体”、“金字塔”)); logRec(面值);
我会这样做:

write_to_log_or_whatever(print_r($par, true));
将其设置为返回输出,而不是像往常一样将其发送到缓冲区


如果在太多的行中看到它对日志文件不好,那么您可以做的另一件事是
json\u encode()
it,但是您必须决定在日志中使用json编码的数据是否有用。如果您要手动查看日志,则可以。但是,如果您有日志文件分析工具,这通常是一件痛苦的事情。

为什么不直接使用
print\u r($par)
?或
var\u export($array,true)