Вход Регистрация
Файл: inc/Loader.php
Строк: 20
<?php
// Основной класс инициализации. 

Class Loader
{
    public static    
$navMap = array();  // Роуты. 
    
public static    $stVersions = array();  // Версии статики. 
    
public static    $stTypes = array();  // Загрузка для js по папкам. 
    
public static    $curStatic;  // Текущая статика. 

    // Автоматический поиск статики и инициализация нужного контроллера.
    
public static function init($className) {
        
$curUrl basename($_SERVER['REQUEST_URI']);
        
Loader::$curStatic Loader::getStaticFile($curUrl);
        
$className ucfirst(substr(basename($className), 0, -4));
        new 
$className();
    }

    
// Нахождения нужной статики. 
    
public static function getStaticFile($curUrl) {
        if (!empty(
$curUrl)) {
            
$phpFile preg_match('/^[a-z0-9-_]+.php$/i'$curUrl);
      foreach (
Loader::$navMap as $i=>$v) {
          if (
$i[0] == '<') continue;
          if (
$phpFile) {
            if(
$v[0] === $curUrl)
                return 
$v[1];
          } else {
            
$m preg_match('/'.str_replace('/''/'$i).'/i'$curUrl);
            if (
$m)
              return 
$v[1];
          }
      }
      return 
Loader::$navMap['<other>'][1];
    }
    return 
Loader::$navMap['<void>'][1];
  }
}
Онлайн: 2
Реклама