php记录log日志

php记录log日志方法:

<span style="font-size:18px;">/**
 * 记录错误日志
 * @param 日志内容  $res
 */
function save_log($res) {
    $err_date = date("Ym", time());
    //$address = '/var/log/error';
    $address = './error';
    if (!is_dir($address)) {
        mkdir($address, 0700, true);
    }
    $address = $address.'/'.$err_date . '_error.log';
    $error_date = date("Y-m-d H:i:s", time());
    $file = $_SERVER['HTTP_REFERER'];
    if(empty($file))
        $file = $_SERVER['SCRIPT_FILENAME'];
    if(is_array($res)) {
        $res_real = "$error_date\t$file\n";
        error_log($res_real, 3, $address);
        $res = var_export($res,true);
        $res = $res."\n";
        error_log($res, 3, $address);
    } else {
        $res_real = "$error_date\t$file\t$res\n";
        error_log($res_real, 3, $address);
    }
}</span>


var_export()  方法详解:

var_export -- 输出或返回一个变量的字符串表示 
描述 :
mixed var_export ( mixed expression , bool ) 
此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。 
您可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。 
EG: 
var_export(array('a','b',array('aa','bb','cc'))) 这种与VAR_DUMP没什么区别; 
$var =var_export(array('a','b',array('aa','bb','cc')),TRUE),加上TRUE后,不会再打印出来,而是给了一个变量,这样就可以直接输出; 
echo $var;此时输出来的形式与var_dump()打印的相似。 


你可能感兴趣的:(php记录log日志)