Maison  >  Article  >  développement back-end  >  Un exemple de la façon dont les fonctions personnalisées PHP enregistrent les journaux

Un exemple de la façon dont les fonctions personnalisées PHP enregistrent les journaux

黄舟
黄舟original
2017-07-21 16:06:461106parcourir

Cet article présente principalement la méthode PHP d'enregistrement des journaux basée sur des fonctions personnalisées, impliquant les compétences opérationnelles de PHP pour les fichiers, les répertoires et les journaux d'erreurs. Les amis dans le besoin peuvent s'y référer

L'exemple de cet article raconte le PHP. basé sur la méthode de journal d'enregistrement de fonction personnalisée. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :


/**
 * 记录错误日志
 * @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() Explication détaillée de la méthode :

var_export – sortie ou renvoie une chaîne de variables Représente

Description :

mixed var_export ( mixed expression , bool )

Cette fonction renvoie des informations structurelles sur la variable passée à cette fonction, elle est similaire à var_dump() , la différence est que la représentation renvoyée est du code PHP légal.

Vous pouvez renvoyer une représentation d'une variable en définissant le deuxième paramètre de la fonction sur TRUE.

EG :

var_export(array('a','b',array('aa','bb','cc'))) Ce genre Il n'y a aucune différence avec VAR_DUMP ;


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

Après avoir ajouté TRUE, il ne sera pas imprimé,

mais une variable est donnée, de sorte que Sortie directe ;


echo $var;

Le formulaire de sortie à l'heure actuelle est similaire à celui imprimé par var_dump().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn