从bin/swoft开始,阅读Swoft框架源码(四)--ConfigProcessor

这个处理器非常简单,甚至都不用一个章节来介绍.
Swoft把它作为一个单独的处理器,应该是为了满足它的设计思想吧.

由于Env处理器已经把.env文件内容加载到php环境,所以Config处理器调用env方法(内部调用getenv方法)设置了APP_DEBUG和SWOFT_DEBUG两个常量.

class ConfigProcessor extends Processor
{
     /**
      * Handle config 
      */ 
     public function handle(): bool
     {
         // Define constant
         $this->defineConstant();
         if (!$this->application->beforeConfig()) {
            return false;
         }
         return $this->application->afterConfig();
     }
     
     /**
      * Define constant 
      */ 
     protected function defineConstant(): void
     {
         // Define some global constants
         define('APP_DEBUG', (int)env('APP_DEBUG', 0));
         define('SWOFT_DEBUG', (int)env('SWOFT_DEBUG', 0));
     }
}

总结:

由于EnvProcessor已经将.env文件的配置加载到php中,所以当前处理器能够使用env方法获取.env中的配置信息.

你可能感兴趣的:(php,swoole,swoft)