温馨提示×

PHP命令行脚本怎样实现日志记录

PHP
小樊
81
2024-11-06 00:11:32
栏目: 编程语言

在PHP命令行脚本中实现日志记录,你可以使用内置的file_put_contents()函数或者创建一个日志类。下面是两种实现方法:

  1. 使用file_put_contents()函数:
<?php
// 定义日志文件路径
$logFilePath = 'log.txt';

// 定义日志级别
$logLevel = 'INFO';

// 定义要记录的信息
$message = '这是一条日志信息';

// 根据日志级别将日志信息写入文件
switch ($logLevel) {
    case 'DEBUG':
        $level = 1;
        break;
    case 'INFO':
        $level = 2;
        break;
    case 'WARNING':
        $level = 3;
        break;
    case 'ERROR':
        $level = 4;
        break;
    default:
        exit('未知的日志级别');
}

$timestamp = date('Y-m-d H:i:s');
$logEntry = "[$timestamp] [$logLevel] $message\n";

file_put_contents($logFilePath, $logEntry, FILE_APPEND);
  1. 创建一个日志类:
<?php
class Logger {
    private $logFilePath;

    public function __construct($logFilePath) {
        $this->logFilePath = $logFilePath;
    }

    public function log($level, $message) {
        $timestamp = date('Y-m-d H:i:s');
        $logEntry = "[$timestamp] [$level] $message\n";
        file_put_contents($this->logFilePath, $logEntry, FILE_APPEND);
    }
}

// 使用示例
$logger = new Logger('log.txt');
$logger->log('INFO', '这是一条日志信息');

这两种方法都可以实现日志记录功能,你可以根据自己的需求选择合适的方法。

0