Beispiel #1
0
 private function recognize()
 {
     $arrDirectoriesToSkip = array('.', '..', 'backend');
     $objHandle = opendir(APP_DIR);
     $boolRecognized = false;
     if ($objHandle !== false) {
         while (false !== ($strResource = readdir($objHandle))) {
             $strConfigFilePath = sprintf('%s/%s/config/app.php', APP_DIR, $strResource);
             if (!is_dir(APP_DIR . '/' . $strResource) || in_array($strResource, $arrDirectoriesToSkip) || !file_exists($strConfigFilePath)) {
                 continue;
             }
             Config::deleteConfig('_appUrlsByEnvironment');
             //                echo $strConfigFilePath.PHP_EOL;
             require $strConfigFilePath;
             $strCurrentAppUrl = $this->currentAppUrl();
             if (!empty($strCurrentAppUrl)) {
                 $boolRecognized = true;
                 $this->strName = $strResource;
                 $this->strDirectory = sprintf('%s/%s', APP_DIR, $this->strName);
                 $this->strApplicationClassesPrefix = '\\' . $this->strName;
                 $arrConfigLanguage = Config::get($strCurrentAppUrl, '_languageByUrl');
                 $this->objLanguages->setCurrentLanguage($arrConfigLanguage[0]);
                 break;
             }
         }
         closedir($objHandle);
     }
     if ($boolRecognized === false) {
         exit('Host cant be recognized. Any application URL not match');
     }
 }