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


PHP Router::setPrefixes方法代码示例

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


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

示例1: parse

 /**
  * Permet de parser l'url (définir quel est le controller, quelle est l'action)
  * @param Request $request objet Request
  */
 public static function parse(Request $request)
 {
     if (!$request->isRooted) {
         // On définit les prefixes s'il y en a
         Router::setPrefixes();
         // On enlève les / en début et fin d'url
         $url = trim($request->url, '/');
         // On créer un tableau à partir de l'URL
         $params = explode('/', $url);
         // On vérifie si on a un prefixe ou pas
         if (isset($params[0]) && in_array($params[0], self::$prefixes)) {
             // Si oui on le stock dans la request
             $request->prefixe = $params[0];
             // et on l'enlève du tableau URL
             array_shift($params);
         }
         // On déinit ensuite le controlleur
         $request->controller = !empty($params[0]) ? $params[0] : App::getInstance()->getAppSettings("default_controller");
         // On vérifie si y a pas une tentative de hack avec "l'ancien system" en vérifiant qu'on appelle pas controller/prefixe_action
         if (isset($params[1])) {
             $action = $params[1];
             // On check si l'action n'est pas au format prefixe_action
             foreach (Self::$prefixes as $k) {
                 if (strpos($action, $k . '_') === 0) {
                     // Si c'est le cas on définit le prefixe et on reformat l'action
                     $request->prefixe = $k;
                     $action = str_replace($k . '_', '', $action);
                 }
             }
             $request->action = $action;
         } else {
             $request->action = App::getInstance()->getAppSettings("default_action");
         }
         $request->params = array_slice($params, 2);
     }
 }
开发者ID:kranack,项目名称:swithMVC,代码行数:40,代码来源:Router.php


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