コード例 #1
0
ファイル: EventTask.php プロジェクト: kingsj/core
 /**
  * Get driver 
  * 
  * @return \XLite\Core\EventDriver\AEventDriver
  */
 public function getDriver()
 {
     if (!isset($this->driver)) {
         $driver = \XLite::GetInstance()->getOptions(array('other', 'event_driver')) ?: 'auto';
         $driver = strtolower($driver);
         $list = $this->getDrivers();
         if ('auto' != $driver) {
             foreach ($list as $class) {
                 if (strtolower($class::getCode()) == $driver) {
                     $this->driver = new $class();
                     break;
                 }
             }
         }
         if (!$this->driver) {
             $this->driver = $list ? new $list[0]() : false;
         }
     }
     return $this->driver;
 }