你知唔知我系靓仔

whmcs通用保存日志

撸了几个插件玩,需要记录一些信息。假设有一个A插件记录显示日志。

B插件保存日志方式

function log_to_plugin($pluginName, $message) {
    // 检查表是否存在
    if (!Capsule::schema()->hasTable('tblplugin_logs')) {
        return; // 如果表不存在,直接返回
    }

    try {
        // 将日志插入到日志表
        Capsule::table('tblplugin_logs')->insert([
            'timestamp' => date('Y-m-d H:i:s'),
            'plugin_name' => $pluginName,
            'log' => $message
        ]);
    } catch (Exception $e) {
        // 处理异常,例如记录到 PHP 错误日志
        error_log("日志记录失败: " . $e->getMessage());
    }
}

// 记录操作日志
function log_balance_operation($message, $userId, $amount) {
    // 构建日志信息
    $logMessage = "用户 ID: $userId, 金额: $amount, 消息: $message";

    // 调用通用日志记录函数
    log_to_plugin('custom_balance_add', $logMessage);
}

每个需要保存日志的插件都可以这么记录了使用A插件查看,不优雅但是勉强能用,需要注意log_to_pluginA不能被重复定义,即每个插件内部记录的函数不能相同。哎菜鸟好累