Home  >  Article  >  Backend Development  >  PHP custom function records logs

PHP custom function records logs

小云云
小云云Original
2018-02-06 09:28:331884browse

This article mainly shares with you how to record logs in PHP based on custom functions, involving PHP's operating skills for files, directories and error logs. Friends in need can refer to it. I hope it can help everyone.


/**
 * 记录错误日志
 * @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());
  if(!empty($_SERVER['HTTP_REFERER'])) {
    $file = $_SERVER['HTTP_REFERER'];
  } else {
    $file = $_SERVER['REQUEST_URI'];
  }
  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);
  }
}

var_export() Method details:

var_export – Output or return the string representation of a variable

Description:

mixed var_export (mixed expression, bool)

This function returns structural information about the variable passed to this function. It Similar to var_dump(), except that the representation returned is legal PHP code.

You can return a representation of a variable by setting the second parameter of the function to TRUE.

EG:

var_export(array('a','b',array('aa','bb','cc'))) This kind There is no difference from VAR_DUMP;


$var =var_export(array('a','b',array('aa','bb','cc')),TRUE)

After adding TRUE, it will not be printed out anymore,

but a variable is given, so that it can be output directly ;


echo $var;

The output form at this time is similar to that printed by var_dump().

Related recommendations:

A simple example of log output to file and database in yii2


The above is the detailed content of PHP custom function records logs. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn