Maison  >  Article  >  développement back-end  >  Comment encapsuler la méthode d'impression des journaux en PHP (avec code)

Comment encapsuler la méthode d'impression des journaux en PHP (avec code)

不言
不言original
2018-08-20 17:33:543822parcourir

Le contenu de cet article explique comment encapsuler et imprimer des journaux en PHP (avec du code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Récemment, il y a eu un problème avec le projet en ligne. Un grand nombre d'utilisateurs l'utilisent. Après avoir longuement cherché la cause, j'ai finalement trouvé l'emplacement de l'erreur en imprimant le fichier. fichier journal ! Par conséquent, pendant le processus de développement, il est très, très important d’imprimer les journaux où des erreurs peuvent survenir ! Laissez-moi vous en parler en détail ci-dessous !

1. Fonction file_put_contents() utilisée

la fonction file_put_contents() écrit une chaîne dans un fichier.

Lorsque cette fonction accède aux fichiers, elle suit les règles suivantes :

  1. Si FILE_USE_INCLUDE_PATH est défini, alors le chemin intégré pour la copie de *filename* sera vérifié

  2. Si le fichier n'existe pas, un fichier sera créé

  3. Ouvrez le fichier

  4. Si LOCK_EX est défini, le fichier sera verrouillé

  5. Si FILE_APPEND est défini, il sera déplacé à la fin du fichier. Sinon, le contenu du fichier sera effacé

  6. Écrire les données dans le fichier

  7. Fermer le fichier et déverrouiller tous les fichiers

En cas de succès, cette fonction renvoie le nombre de caractères écrits dans le fichier. En cas d'échec, False est renvoyé.

Syntaxe

int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
Paramètres Description
fichier Obligatoire. Spécifie le fichier dans lequel les données doivent être écrites. Si le fichier n'existe pas, un nouveau fichier est créé.
données Obligatoire. Spécifie les données à écrire dans le fichier. Peut être une chaîne, un tableau ou un flux de données.
mode Facultatif. Spécifie comment ouvrir/écrire le fichier. Valeurs possibles :
    参数 描述
    file 必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。
    data 必需。规定要写入文件的数据。可以是字符串、数组或数据流。
    mode 可选。规定如何打开/写入文件。可能的值:
    • FILE_USE_INCLUDE_PATH

    • FILE_APPEND

    • LOCK_EX

    context 可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。

    FILE_USE_INCLUDE_PATH

    <?php
    /**
     * 声明文件日志
     * @param string $type
     * @param string $data
     */
    public function makeLog($type=&#39;&#39;,$data=&#39;&#39;){
      if(!empty($type)){
      // &#39;DIR_LOG&#39;=>&#39;/home/www/ymd/public/ymd/logs/&#39;
    
     @file_put_contents(C(&#39;DIR_LOG&#39;).$type."/".$type.&#39;_&#39;.date(&#39;YmdH&#39;).&#39;.txt&#39;,$data."\n",FILE_APPEND);
     }
    }
    
    //调用文件日志
     $this->makeLog(&#39;ymd&#39;,&#39;日志记录&#39;);
    FILE_APPEND

    LOCK_EX

context Facultatif. Spécifie l’environnement d’un descripteur de fichier. le contexte est un ensemble d'options qui peuvent modifier le comportement du flux.

2. Encapsuler la méthode makeLog() du fichier journal

Recommandations associées : Comment enregistrer des images réseau en php (code)Implémentation du code de la fusion verticale et horizontale de tableaux bidimensionnels en php

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