Heim > php教程 > php手册 > PHP-Protokollierung zum Debuggen von Code

PHP-Protokollierung zum Debuggen von Code

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-08-08 08:50:03
Original
1814 Leute haben es durchsucht

Thinkphp verfügt über ein eigenes Protokollsystem und die generierten Dateien befinden sich zur Laufzeit. Heute stellen wir eine nativ geschriebene Methode zum Einfügen von Protokollen vor, um die IP-Adresse, die Zugriffszeit und den Browsertyp des Besuchers aufzuzeichnen.
PHP-Protokollierung zum Debuggen von Code
Generieren Sie die Protokollklasse<?php <code class="prettyprint linenums lang-php"><?php <br /> /*<br>  * 日志记录<br>  * 每天生成一个日志文件,当文件超过指定大小则备份日志文件并重新生成新的日志文件<br>  *<br> */<br> class Log {<br> <br>     private $maxsize = 1024000; //最大文件大小1M<br>     <br>     //写入日志<br>     public function writeLog($filename,$msg){<br>         $res = array();<br>         $res['msg'] = $msg;<br>         $res['logtime'] = date("Y-m-d H:i:s",time());<br> <br>         //如果日志文件超过了指定大小则备份日志文件<br>         if(file_exists($filename) && (abs(filesize($filename)) > $this->maxsize)){<br>             $newfilename = dirname($filename).'/'.time().'-'.basename($filename);<br>             rename($filename, $newfilename);<br>         }<br> <br>         //如果是新建的日志文件,去掉内容中的第一个字符逗号<br>         if(file_exists($filename) && abs(filesize($filename))>0){<br>             $content = ",".json_encode($res);<br>         }else{<br>             $content = json_encode($res);<br>         }<br> <br>         //往日志文件内容后面追加日志内容<br>         file_put_contents($filename, $content, FILE_APPEND);<br>     }<br> <br> <br>     //读取日志<br>     public function readLog($filename){<br>         if(file_exists($filename)){<br>             $content = file_get_contents($filename);<br>             $json = json_decode('['.$content.']',true);<br>         }else{<br>             $json = '{"msg":"The file does not exist."}';<br>         }<br>         return $json;<br>     }<br> }<br>  ?> /*$Log = new Log();<br> $Log->writeLog($filename, $msg);<br> $loglist = $Log->readLog($filename); * Protokolldatensatz

* Erstellen Sie jeden Tag eine Protokolldatei. Wenn die Datei die angegebene Größe überschreitet, sichern Sie die Protokolldatei und erstellen Sie eine neue Protokolldatei neu PHP-Protokollierung zum Debuggen von Code * */ Klassenprotokoll {

Private $maxsize = 1024000; //Maximale Dateigröße 1M //Ins Protokoll schreiben

Öffentliche Funktion writeLog($filename,$msg){          $res = array();          $res['msg'] = $msg;         $res['logtime'] = date("Y-m-d H:i:s",time()); ​​​​ //Wenn die Protokolldatei die angegebene Größe überschreitet, sichern Sie die Protokolldatei If(file_exists($filename) && (abs(filesize($filename)) > $this->maxsize)){ $newfilename = dirname($filename).'/'.time().'-'.basename($filename);                rename($filename, $newfilename);         } ​​​​ //Wenn es sich um eine neue Protokolldatei handelt, entfernen Sie das erste Zeichen, Komma im Inhalt If(file_exists($filename) && abs(filesize($filename))>0){              $content = ",".json_encode($res);           }sonst{               $content = json_encode($res);         }               //Protokollinhalt nach dem Inhalt der Protokolldatei anhängen           file_put_contents($filename, $content, FILE_APPEND); } //Protokoll lesen Öffentliche Funktion readLog($filename){ If(file_exists($filename)){               $content = file_get_contents($filename);               $json = json_decode('['.$content.']',true);           }sonst{              $json = '{"msg":"Die Datei existiert nicht."}';         }          return $json; } } ?>Protokolle schreiben und lesen$Log = new Log(); $Log->writeLog($filename, $msg); $loglist = $Log->readLog($filename);Sehen Sie sich das generierte Protokoll an: http://www.sucaihuo.com/js/903.html PHP zeichnet die Benutzerzugriffs-IP, den Browsertyp und die Zugriffszeit in der TXT-Protokolldatei.zip auf ( 5,08 KB Download: 0 Mal )
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage