最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

YII分模塊加載路由的實現(xiàn)方法

 更新時間:2018年10月01日 09:43:48   作者:舊夢發(fā)癲  
這篇文章主要介紹了YII分模塊加載路由的實現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

起因。因為項目比較大了之后劃了很多模塊。就使得config下面的路由文件變得很龐大,變得不好維護。這個時候就想如果可以把路由拆分到不同模塊去自己管理,就會變得清晰很多。

拆了之后項目配置結(jié)構(gòu)如下

新增了一個modules.php來管理模塊的加載

調(diào)整之前 web.php的模塊加載配置如下

'modules' => [
  'setup' => [
    'class' => 'appcomponents\modules\setup\Module',
  ],
  'shareorder' => [
    'class' => 'appcomponents\modules\shareorder\Module',
  ],
]

調(diào)整之后 web.php模塊配置如下

'modules' => require (__DIR__).'/modules.php',

modules.php里面配置如下

return [
  'setup' => [
    'class' => 'appcomponents\modules\setup\Module',
  ],
  'shareorder' => [
    'class' => 'appcomponents\modules\shareorder\Module',
  ],
];

然后修改rules.php

$default = [


];
$modules = require __DIR__.'./modules.php';
$roles = [];
foreach ($modules as $module)
{
  $class = new ReflectionClass($module['class']);
  $filePath = $class->getFileName();
  $filePath = str_replace('Module','rules',$filePath);
  if(file_exists($filePath))
  {
    $role = require $filePath;
    $roles = array_merge($roles,$role);
  }
}
return array_merge($roles,$default);。

利用反射找到每個模塊的真實路徑,然后加載當前模塊下的rules.php文件

每個模塊的目錄結(jié)構(gòu)

其中Modules.php是配置當前模塊,加載命名空間等。rules.php為當前模塊的下的路由配置

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

东辽县| 洛川县| 东明县| 庆安县| 富阳市| 龙井市| 涿州市| 莱西市| 营山县| 永城市| 平塘县| 许昌市| 铜川市| 保亭| 张家港市| 镇坪县| 宽城| 额尔古纳市| 高青县| 临汾市| 广元市| 区。| 河东区| 光山县| 高平市| 扶绥县| 大姚县| 昭平县| 海口市| 永年县| 阳西县| 广昌县| 海林市| 冕宁县| 托里县| 普安县| 连云港市| 西吉县| 安顺市| 济阳县| 江达县|