2016-07-26 46 views
1

我正在尝试使用内置的Slim记录器,但目前为止尚未成功。在Userfrosting中启用记录器

这就是我正在尝试,但我得到一个错误。

  1. 更改为config_userfrosting.php:从的index.php

    /*Create a log writer */ 
    
    $logWriter = new \UserFrosting\LogWriter(fopen('C:\xampp\htdocs\userfrosting\log\dev_logfile.log', 'a')); 
    
    $app->configureMode('dev', function() use ($app, $public_path, $uri_public_root) { 
    $app->config([ 
        'log.enable' => true, 
        'log.writer' => $logWriter, 
        'debug' => false, 
    
  2. 呼叫日志作者:

$ APP->对数>调试(“这是一个测试从记录器...“);

错误接收:

PHP Notice: Undefined variable: logWriter in \\userfrosting\\config-userfrosting.php on line 33 

回答

2

为了一个变量为闭包(configureMode)内进行访问,你需要用use(...)参数列表传递它:

$app->configureMode('dev', function() use ($app, $public_path, $uri_public_root, $logWriter) { 

    $app->config([ 
     'log.enable' => true, 
     'log.writer' => $logWriter, 
     'debug' => false, 
     ... 
}); 
+0

我更新使用(..)参数如图所示。但是,现在出现以下错误:'Fatal error:Class'UserFrosting \\ LogWriter'not found in C:\\ xampp \\ htdocs \\ userfrosting \\ config-userfrosting.php' –

+0

明白了。我需要使用\ Slim \ Logwriter。感谢@alexw。 –

+0

不要忘记接受并upvote我的答案! – alexw