ホームページ  >  記事  >  バックエンド開発  >  PHPカスタム関数はログを記録します

PHPカスタム関数はログを記録します

小云云
小云云オリジナル
2018-02-06 09:28:331841ブラウズ

この記事では、主にカスタム関数に基づいて PHP でログを記録する方法について説明します。必要な方の参考になれば幸いです。


/**
 * 记录错误日志
 * @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() メソッドの詳細: 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()

var_export – 変数の文字列表現を出力または返します

説明:

mixed var_export (mixedexpression,bool)

この関数は、関数に渡された変数に関する構造情報を返します。返される表現が正当な PHP コードである点を除けば、var_dump() と似ています。


関数の 2 番目のパラメーターを TRUE に設定することで、変数の表現を返すことができます。

🎜例:🎜🎜var_export(array('a','b',array('aa','bb','cc'))) これは VAR_DUMP と変わりません;🎜🎜 🎜🎜rrreee🎜TRUEを追加すると出力されなくなります🎜🎜代わりに変数を与えて直接出力できるようにします🎜🎜🎜🎜rrreee🎜このときの出力形式はと同じです。 var_dump() も同様に出力します。 🎜🎜関連する推奨事項: 🎜🎜🎜 yii2 のファイルとデータベースへのログ出力の簡単な例🎜🎜🎜🎜🎜

以上がPHPカスタム関数はログを記録しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。