当前位置: 首页>>代码示例>>PHP>>正文


PHP Autoload::nameSpaceExists方法代码示例

本文整理汇总了PHP中Autoload::nameSpaceExists方法的典型用法代码示例。如果您正苦于以下问题:PHP Autoload::nameSpaceExists方法的具体用法?PHP Autoload::nameSpaceExists怎么用?PHP Autoload::nameSpaceExists使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Autoload的用法示例。


在下文中一共展示了Autoload::nameSpaceExists方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: loadController

 private static final function loadController()
 {
     $view = \View\ViewBundle::getInstance();
     //$view -> setTemplate( KIT_VIEW_TEMPLATE );
     ////\View\ViewBundle::getInstance() -> setVar( 'path', self::$_path );
     self::prepareController();
     $space = 'App\\Controllers\\' . self::$_controller . 'Controller';
     $e404 = ['controller' => self::$_controller, 'action' => self::$_action];
     if (!\Autoload::nameSpaceExists($space)) {
         return $view->e404($e404);
     }
     $cont = new $space();
     $cont->setTpl(self::$_controller . '/' . self::$_action);
     $act_method = "action" . self::$_action;
     /**
      * Проверка существования метода экшена и выполнение его, или стандартного
      * метода 404 ошибки.
      */
     if (method_exists($cont, $act_method)) {
         $cont->{$act_method}(self::$_furl);
         $cont->exir();
     } else {
         $view->e404($e404);
     }
 }
开发者ID:deale,项目名称:dt,代码行数:25,代码来源:FrontControllerAbstract.php

示例2: findRule

 public static function findRule($path)
 {
     $f_path = explode('/', $path);
     $return = [];
     foreach (self::$_relation as $rel_path => $row) {
         if ($path == $rel_path) {
             /**
              * Добавление пустого значения в начало списка, например:
              *  Array
              *  (
              *        [0] =>
              *        [1] => Account
              *        [2] => Authorize
              *  )
              * для дальнейшего использования массива данных системой. Нулевой пустой
              * ключ нужен нормального разбора контроллером FURL
              */
             array_unshift($row, '');
             return $row;
         } else {
             $furl = explode('/', $rel_path);
             foreach ($furl as $i => $frow) {
                 if (isset($f_path[$i]) and $frow == $f_path[$i]) {
                     continue;
                 } else {
                     if ($frow[0] == '{' and $frow[strlen($frow) - 1] == '}') {
                         if (!isset($f_path[$i])) {
                             array_unshift($row, '');
                             $return = $return ?: $row;
                             continue;
                         }
                         $type = ucfirst(preg_replace('#{(.*)}#', '$1', $frow));
                         $ns = "App\\Property\\{$type}";
                         if (!\Autoload::nameSpaceExists($ns)) {
                             break;
                         }
                         $validate = new $ns();
                         if (!$validate->check($f_path[$i])) {
                             break;
                         }
                         array_unshift($row, '');
                         $return = $return ?: $row;
                         $return[] = $f_path[$i];
                         continue;
                     } else {
                         break;
                     }
                 }
             }
         }
     }
     return $return;
 }
开发者ID:deale,项目名称:dt,代码行数:53,代码来源:RouterAbstract.php

示例3: prepareRelation

 private function prepareRelation($name)
 {
     $rel = $this->_initRelation[$name];
     $model_name = "App\\Models\\{$rel[1]}";
     if (!\Autoload::nameSpaceExists($model_name)) {
         throw new \Exceptions\DevelException('_RELATION_CORRECT__relname:' . $rel[1]);
     }
     $this->_relationModel[$name] = $model = new $model_name();
     return $model;
 }
开发者ID:deale,项目名称:dt,代码行数:10,代码来源:ModelAbstract.php

示例4: initValidate

 public function initValidate($type)
 {
     if (!preg_match('#^[a-z]{1}[a-z_0-9]{0,24}$#i', $type)) {
         throw new \Exceptions\DevelException('_PROPERTY_INIT_VALIDATE_INCORRECT');
     }
     $this->_validateName = ucfirst($type);
     $validate_name = ucfirst($type);
     $namespace = 'App\\Property\\' . $validate_name;
     if (!\Autoload::nameSpaceExists($namespace)) {
         throw new \Exceptions\DevelException('_VALIDATOR_TYPES_NF__' . $validate_name);
     }
     $this->_validate = new $namespace();
     $this->_tag = $this->getValidate()->getTag();
     $modifier = "App\\Property\\Modifier\\" . $validate_name;
     if (\Autoload::nameSpaceExists($modifier)) {
         $this->_modifier = new $modifier();
     } else {
         $this->_modifier = new \Property\Modifier();
     }
 }
开发者ID:deale,项目名称:dt,代码行数:20,代码来源:Init.php


注:本文中的Autoload::nameSpaceExists方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。