Example #1
0
 /**
  * Core class will extend default spiral container and initiate set of directories. You must
  * provide application, libraries and root directories to constructor.
  *
  * @param array $directories Core directories list.
  */
 public function __construct(array $directories)
 {
     //Container constructing
     parent::__construct();
     $this->directories = $directories + ['public' => $directories['root'] . '/webroot', 'config' => $directories['application'] . '/config', 'runtime' => $directories['application'] . '/runtime', 'cache' => $directories['application'] . '/runtime/cache'];
     if (empty($this->environment)) {
         //This is spiral shortcut to set environment, can be redefined by custom application class.
         $filename = $this->directory('runtime') . '/environment.php';
         $this->setEnvironment(file_exists($filename) ? require $filename : self::DEVELOPMENT);
     }
     date_default_timezone_set($this->timezone);
 }